[英]Running jQuery.each() on dynamically created elements
我有以下代碼;
$('#btnSave').click(function (e) {
$("input:text").each(function (index, value) {
var el = $(this);
if (el.val().length == 0) { el.css('border', '1px solid red') }
return false;
});
});
這里,所有輸入文本元素都是動態創建的,因此我永遠無法驗證它們是否為空。
我如何使用.on()
和.each()
? 我用谷歌搜索沒有運氣..提前謝謝..
你的代碼非常好,但擺脫了return false;
。 在第一次輸入命中后,它會停止.each()
循環。
它應該不是問題,除非當你點擊頁面時頁面上沒有元素。也因為你返回false; 當該字段為空時,只有第一個文本框將被賦予邊框..其他將被清空,即使是空的..
試試這個
$(function() {
$('#btn1').on('click' , function() {
var inp = '';
for(var i=1;i< 6;i++){
inp += '<input type="text" id="txt' + i + '"/>'
}
$('.textboxes').append(inp);
var isError = false;
$("input:text").each(function (index, value) {
var el = $(this);
if (el.val() == '') {
el.addClass('error');
isError = true;
}
});
if(isError){return false;}
});
});
另請查看此工作示例... FIDDLE
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.