Jquery - 条件为真的第一个实例

时间:2014-07-14 14:36:07

标签: javascript jquery

我正在制作自定义日历。 我正在处理日历日的位置。 我正在研究一个需要第一次找到条件的函数。

查看下面的代码,我需要console.log("test")只有第一次 var J 的值大于 var currentDate

这是我的代码:http://jsfiddle.net/c33Xj/

$("#Cal tbody tr:first-child td").each(function(){
     var currentDate = (new Date).getDate();
     var h = $(this).text();
     if (h == weekDays[currentDay]) {
         var j = $(this).index();
         console.log(j);
     }
});

4 个答案:

答案 0 :(得分:2)

我愿意

var e = $("#Cal tbody tr:first-child td").filter(function() { 
    return $(this).text() === weekDays[currentDay] 
}).first()

然后用e变量做任何你想做的事。

答案 1 :(得分:2)

return false;

将取消其余的迭代。

请参阅http://api.jquery.com/jquery.each/(示例部分上方的最后一段。)

答案 2 :(得分:-1)

对所有元素使用全局(通用)标志,并在第一次调用Console.log时更改其状态,因此请遵循以下时间检查以下条件:

var logged = false;
$("#Cal tbody tr:first-child td").each(function(){
     var currentDate = (new Date).getDate();
     var h = $(this).text();
     if (h == weekDays[currentDay]) {
     var j = $(this).index();
     if(loged==false)
     {
          console.log(j);
          logged = true;
    }
 }
});

logged = false; //Restart for the next time;

答案 3 :(得分:-2)

为了确定哪一天是当天,我会使用模数运算符(%)。当除法(30/30)导致结果(零)时,模数表示其余部分。所以30%30是0,30%20是10(20适合30一次,10休息)等。

如果j是今天,则j%currentDate为零:

if(j % currentDate == 0) {
    console.log("test");
}