0
我無法弄清楚我在這裏做錯了什麼。我有一個函數,查找特定div中的所有輸入和選擇框。它成功找到這些元素,並在輸入爲空時添加一個錯誤標籤。但出於某種原因,如果我在第一個輸入中輸入一個值,那麼它將不會單獨驗證其他輸入。理想情況下,我希望它能夠單獨驗證輸入,看起來像是將它們驗證爲一個組。有任何想法嗎?我通過代碼示例學到了最好的東西,請在適用的地方加入。jQuery - 查找並驗證div中的一組輸入框
function validateInput(event) {
var $target = $(event.target);
var validateInfo = $target.closest('#column').find('input, select');
validateInfo.val() == '' ? validateInfo.prev('label').addClass('error') : validateInfo.prev('label').removeClass('error');
return false;
}
return this.each(function() {
var $headerForm = $(this);
headerForm.on('click, '.header a', validateInput);
}
你所說的「單獨將不會驗證其他輸入」呢?你的js有點脫離上下文,'this.each'返回了什麼?您將一組元素分配給'validateInfo',但將其視爲單個元素:'validateInfo.val()==''' – helion3
我有一組輸入,當它通過我的函數運行時,它向所有人添加錯誤標籤領域。但是,如果我在其中一個字段中輸入值,則其他任何字段都不會生效。 –
但是'.find('input,select')'會返回多個元素,所以你需要迭代這個列表,但你只需要調用'validateInfo.val()'。 – helion3