验证表单填写完毕,HTML jQuery

时间:2012-04-16 15:12:29

标签: jquery html forms validation

我知道这是一个简单的问题,但是你能用以下代码帮助我吗?我做了这个函数来检查表单中是否填写了必填字段。如果它发现其中一个输入为空,则它应该停止并返回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/

现在有效,谢谢大家!

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;
}