当值匹配时打破jQuery循环

时间:2013-09-17 07:08:55

标签: jquery

我将我当前的日期和时间与我的日期和时间列表进行比较。在代码的最后,我将比较getDates是否大于输出。我想在它为真时停止循环并使用匹配的值(停止我使用return false)。我该怎么办呢?我做了一个说明“匹配价值在这里”,我认为这是我需要插入的地方。

    // Get current date, format it
var d = new Date();

var month = d.getMonth()+1;
var day = d.getDate();
var hour = d.getHours();
var minute = d.getMinutes();

var output = d.getFullYear() + '-' +
((''+month).length<2 ? '0' : '') + month + '-' +
((''+day).length<2 ? '0' : '') + day + ' ' +
((''+hour).length<2 ? '0' :'') + hour + ':' +
((''+minute).length<2 ? '0' :'') + minute
alert(output)

// Get all dates and time found in the table on this page
$('td:first-child').each(function() {
    var getDates = $(this).text();


// Check if dates in table expired. If expired skip and display upcoming one
// if getDates is bigger than output then stop looping and use it

    if ( getDates > output) {
        alert('true')
        return false;
        $('#defaultCountdown').countdown({until: new Date(MATCHED VALUE GOES HERE)});
    }

2 个答案:

答案 0 :(得分:0)

您在设置countdown之前返回。

尝试

if ( getDates > output) {
    alert('true')
    $('#defaultCountdown').countdown({until: new Date(getDates)});
    return false;
}

答案 1 :(得分:0)

使函数返回false。

$('td:first-child').each(function() {
    var getDates = $(this).text();


// Check if dates in table expired. If expired skip and display upcoming one
// if getDates is bigger than output then stop looping and use it

    if ( getDates > output) {
        alert('true')
        $('#defaultCountdown').countdown({until: new Date(MATCHED VALUE GOES HERE)});
        return false;
    }
}

来自文档:

  

我们可以通过使回调函数&gt;在特定的迭代中打破$ .each()循环。返回false。返回非false与for循环中的continue语句相同;它&gt;将立即跳到下一次迭代。