Jquery 验证具有相同类名的两个输入
我需要验证两个文本字段的空值,在我的页面中尝试了这段JqueryJquery 验证具有相同类名的两个输入,jquery,Jquery,我需要验证两个文本字段的空值,在我的页面中尝试了这段Jquery $('#div1').hide(); $('#btn1').click(function(){ $('.class1').each (function() { if($(this).val() == "") { $('#div1').show(); }else { $('#div1').hide(); } });
$('#div1').hide();
$('#btn1').click(function(){
$('.class1').each (function() {
if($(this).val() == "") {
$('#div1').show();
}else {
$('#div1').hide();
}
});
它仅验证第一个文本字段。有什么帮助吗?事实上,只要选择中的任何元素有
val()
的“
,代码就应该显示#div1。我不确定这是您想要的,也许您想为每个输入元素显示不同的
函数的回调将获得两个参数,index
——数组中元素的索引,以及element
——数组中的元素。您可以使用它来区分正在验证的元素:
$('.class1').each (function(index, element) {
if($(this).val() == "") {
$('#div' + index).show();
}else {
$('#div' + index).hide();
}
});
请参见演示
不过,这确实是一个不干净的编程。您可能想试试优秀的编程方法。我认为您应该遵循以下方法
$('#div1').hide();
$('#btn1').click(function() {
$('.class1').each(function() {
$('#div1').hide();
if ($(this).val() == "") {
$('#div1').show();
return false;
}
});
});
根据您的代码,我猜只对最后一次输入进行了验证
什么是
$('.class1').length
相等?我只需要显示一个div和两个文本字段。最初,我的div将处于隐藏状态,在检查值==“”时,我需要显示。谢谢分享。。。