2013-07-27 31 views
-1

我是jquery的新手。我想实现一个循环的jquery datepicker。所以我写了以下内容:For循环执行jquery函数不执行

for(var m = 1; m < 6 ; m++) 
{ 
    $(function() { 
    $("#dt_id"+m).datepicker({ 
    changeMonth: true, 
    changeYear: true, 
    defaultDate: '1/1/1970', 
    yearRange: '1910:2010' 
    }); 
}); 

} 

但它没有显示日历。

回答

0

您的$(function() { ... })块可能位于错误位置,或者不必要。它相当于$(document).ready(function() { ... }),但是因为您尝试在回调中使用m,所以在回调被调用时它将始终具有值6。

如果在其他地方没有类似的块,请将整个循环与$(function())调用进行打包。

$(function() { 

    for (var m = 1; m < 6 ; m++) { 
     $("#dt_id"+m).datepicker({ 
      changeMonth: true, 
      changeYear: true, 
      defaultDate: '1/1/1970', 
      yearRange: '1910:2010' 
     }); 
    } 

}); 
+0

Thnaks。但它的第一个元素,即只有m = 1! – user2625357

+0

'#dt_idX'是什么元素? – Alnitak