我有一个输入字段数组,其中包含一些信息。如果其中一个是空的,我应该检查一下。
jQuery代码:
$("#NewUserBtn").click(function () {
var zorunluAlan = ["#YeniAd", "#YeniSoyad", "#YeniEposta", "#YeniEpostaOnay", "#YeniSifre", "#YeniSifreOnay"];
for (i = 0; i < zorunluAlan.length; i++) {
if (//What should i write here?) {
alert("Please fill all input fields!");
break;
}
}
});
答案 0 :(得分:3)
使用,
$("#NewUserBtn").click(function () {
var zorunluAlan = ["#YeniAd", "#YeniSoyad", "#YeniEposta", "#YeniEpostaOnay", "#YeniSifre", "#YeniSifreOnay"];
for (i = 0; i < zorunluAlan.length; i++) {
if ($(zorunluAlan[i]).val().trim().length == 0) {
alert("Please fill all input fields!");
return false;
}
}
});
答案 1 :(得分:2)
假设您正在使用jQuery,则需要将!$(zorunluAlan[i]).val()
作为条件。
答案 2 :(得分:2)
您可以使用jQuery filter
函数以更干净的方式完成此操作:
var zorunluAlan = ["#YeniAd", "#YeniSoyad", "#YeniEposta", "#YeniEpostaOnay", "#YeniSifre", "#YeniSifreOnay"];
var $empty = $(zorunluAlan.join(",")).filter(function() {
return ($(this).val().length === 0);
});
if($empty.length > 0) {
alert("Please fill all input fields!");
}
答案 3 :(得分:0)
即使在Vanilla JS
中也很容易document.getElementById('NewUserBtn').onclick = function() {
var zorunluAlan = ["YeniAd","YeniSoyad","........"],
l = zorunluAlan.length, i;
for( i=0; i<l; i++) {
if( !document.getElementById(zorunluAlan[i]).value) {
alert("Please fill all input fields! ["+zorunluAlan[i]+" is empty]");
return false;
}
}
return true;
}
然后再次,它在HTML中更容易:
<input type="text" name="YeniAd" REQUIRED />
该属性不必是大写的,我只是为了使它更加明显;)
答案 4 :(得分:0)
$("#NewUserBtn").click(function () {
var zorunluAlan = ["#YeniAd", "#YeniSoyad", "#YeniEposta", "#YeniEpostaOnay", "#YeniSifre", "#YeniSifreOnay"];
for (i = 0; i < zorunluAlan.length; i++) {
if (!$.trim($(zorunluAlan[i]).val()).length) {
alert("Please fill all input fields!");
break;
}
}
});
答案 5 :(得分:0)
使用每个
的替代方法var zorunluAlan = $("#YeniAd, #YeniSoyad, #YeniEposta, #YeniEpostaOnay, #YeniSifre, #YeniSifreOnay"),
invalid = false;
if(zorunluAlan.length) {
zorunluAlan.each(function() {
var thisValue = $(this).val();
if(thisValue == "" || !thisValue){
invalid = true;
}
});
}
if(invalid){
alert("Please fill all input fields!");
}
答案 6 :(得分:0)
使用jQuery添加错误类的基本思路
$("#a,#b,#c")
.removeClass("error")
.filter(
function(){
return !this.value.length;
}
)
.addClass("error");
可以通过使用类/属性而不是字符串来简化它。