Javascript 表单验证在第一次迭代时停止
我正在尝试编写用于表单验证的js代码。我首先要检查字段是否为空:Javascript 表单验证在第一次迭代时停止,javascript,validation,Javascript,Validation,我正在尝试编写用于表单验证的js代码。我首先要检查字段是否为空: var validationInfo = {"displayname" : {}, "password" : {}, "email" : {}, "username" : {}}; document.newUser.onsubmit = function () { for(key in validationInfo) { var field = document.getElementById(key);
var validationInfo = {"displayname" : {}, "password" : {}, "email" : {}, "username" : {}};
document.newUser.onsubmit = function () {
for(key in validationInfo) {
var field = document.getElementById(key);
if(field.value == "") {
field.setAttribute("style","background-color: yellow;");
field.select();
return false;
}//checking empty fields
}//check validation
return true;
}
当我只提交表单的第一个字段时,它会变成黄色,所以我认为验证在第一次迭代后停止。“返回错误”是否定位错误
第二个问题,如果我想检查其他内容,比如字段是否为空,我应该在同一个函数还是另一个函数中进行检查?最好的做法是什么
谢谢如果出现任何验证错误,请使用变量
\u valid
,并将其指定为false。返回此变量
var validationInfo = {"displayname" : {}, "password" : {}, "email" : {}, "username" : {}};
document.newUser.onsubmit = function () {
var _valid = true;
for(key in validationInfo) {
var field = document.getElementById(key);
if(field.value == "") {
field.setAttribute("style","background-color: yellow;");
field.select();
_valid = false;
}//checking empty fields
}//check validation
return _valid;
}
删除
返回false代码>返回导致它停止迭代,imo@kristjanreinhold:这是事实,不是意见;-)@KrishR如果我删除了它,那它为什么要用空字段提交呢?为什么\u valid
,而不是不使用随机下划线的东西,并且更具描述性,比如:formIsValid
?这里只是吹毛求疵;-)