想想看,我有10個輸入框,(使用據透露日期選擇器插件)JavaScript的for循環不拾取值id
我點擊輸入框時,一組特定的要求,或plux /負div也被擊中(根據需要顯示/隱藏10個框)。
此循環似乎沒有選取x和y變量。
警告我一直回聲6例如..不知道爲什麼..
這裏是我的環...和想法x和y似乎沒有,爲什麼要設置?
for (var x = 1; x <= 10; x++) {
var y = x+1;
$('#date_start'+y).attr("disabled", "disabled");
$('#date_start'+x).datetimepicker();
$('#date_start'+x).blur(function() {
if (isset($('#date_start'+x).val())) {
$('.add_time_'+x).css('visibility', 'visible');
} else {
$('.add_time_'+x).css('visibility', 'hidden');
$('.rem_time_'+y).css('visibility', 'hidden');
}
});
$('.add_time_'+x).click(function() {
alert('ici: ' + y);
$('.date_'+y).css('visibility', 'visible');
$('#date_start'+y).removeAttr("disabled");
$('.rem_time_'+y).css('visibility', 'visible');
});
$('.rem_time_'+y).click(function() {
$('.date_'+y).css('visibility', 'hidden');
$('#date_start'+y).attr("disabled", "disabled");
$('#date_start'+y).val('');
$('.rem_time_'+y).css('visibility', 'hidden');
$('.add_time_'+y).css('visibility', 'hidden');
});
}
=== 注意,isset,是一個單獨的功能,我要檢查如果字段值爲空/不設置 當我嘗試和回聲出$(「#DATE_START」的+ x的值).val()
它回聲未定義...即使相應的輸入HAS屏幕上的值。
閱讀:http://stackoverflow.com/questions/111102/how-does-a-javascript-closure-work – sje397 2010-12-13 14:50:43
你是在循環中定義函數。請參閱http://blog.morrisjohns.com/javascript_closures_for_dummies.html示例5. – 2010-12-13 14:51:17