我试图查找并计算div中的所有输入字段,并禁用按钮(如果有空)。但是有几个div具有相同的类。我只需要一个输入字段。尝试了十几件事,但它不起作用。它可以计算页面上的所有输入字段,也可以不计数。
function submitDisable(){
counter = 0;
$('.shipdiv input').each(function(){
if( $(this).val() == ''){
$(this).css("background-color","#ff0000");
$(this).closest('.shipdiv').find('#button-submit').prop('disabled', true);
counter++;
}
if( $(this).val() != ''){
$(this).css("background-color","");
counter-1;
}
if(counter == "0"){
$(this).closest('.shipdiv').find('#button-submit').prop('disabled', false);
}
});
}
jQuery(document).ready(function(){
$('.shipdiv').click(submitDisable);
});
我尝试$(this, 'input')
使用find();
使用children();
希望任何人都不应该帮助我。谢谢!
答案 0 :(得分:2)
您需要确保搜索范围设置为单击的div。目前,您正在查找所有包含课程shipdiv
和所有input
字段的div。更新您的功能,在点击的div .find()
上调用$(this)
:
function submitDisable(){
counter = 0;
$(this).find('input').each(function(){
..
});
}
答案 1 :(得分:0)
if( $('.shipdiv input[value=""]').length>0 )
{
$('.shipdiv input:first').closest('.shipdiv').find('#button-submit').prop('disabled', true);
}