我知道这是一个简单的问题,但是你能用以下代码帮助我吗?我做了这个函数来检查表单中是否填写了必填字段。如果它发现其中一个输入为空,则它应该停止并返回false。如果所有元素都有内容,则应返回true。以下函数不起作用,因为我的return false;
行在jQuery .each
函数内。它没有返回我定义的新函数。我怎么处理这个?
function check_form(){
$('form .required').each(function(){
if ($(this).val() == ""){
show_dialog('Please enter a value for ' + $(this).attr('name'));
return false;
}
});
return true;
}
即使某些必填字段为空,此函数每次都返回true。
问题在这个小提琴中描述:http://jsfiddle.net/f59t4/2/
现在有效,谢谢大家!
答案 0 :(得分:4)
试试这个
function check_form(){
var flag = true;
$('form .required').each(function(){
if ($(this).val() == ""){
show_dialog('Please enter a value for ' + $(this).attr('name'));
flag = false;
}
});
return flag;
}
答案 1 :(得分:1)
假设:
1)您需要所有问题的验证摘要,
2)您不希望将包含所有空格的字段计为有效,然后:
function checkform () {
var errors = "";
var $blankFields = $('form .required').filter(function () {
return $.trim($(this).val()) === "";
});
if ($blankFields.length) {
$blankFields.each(function () {
errors += "Please enter a value for " + $(this).attr('name') + "<br />";
});
show_dialog(errors);
return false;
}
return true;
}