发送自定义 jQuery 验证表单

Sending a custom jQuery validation form

我一直在进行一些自定义验证(非常基础)。它完成了我需要它做的事情,但我不知道如何提交表格。我认为 return true 会起作用,但遗憾的是它不起作用。这是我目前使用的代码。

$('button').click(function() {
    $('.required').each(function() {
        if ($(this).val() == '') {
            return false;
            $(this).val("Please enter a value.");
            $(this).css("background", "#d42c43");
            $(this).css("border-color", "#d42c43");
            $(this).css("color", "#ffffff", "!important");
        } else {
            return true;
        }
    });
});

我想要的所有输入字段都包含所需的 class。

您可以在表单中添加一个 ID,然后使用 jQuery 中的 $('#form_id').submit(); 方法。

因为它不是提交,所以点击时不会提交。

按钮在表单内部,对吗?您可以递归地导航到它的父级,直到找到表单标签,然后提交。

$(this).parent().submit();

或者你可以把你的按钮换成提交,提交与否的行为由onclick的return决定。

$('button').click(function() {
    $('.required').each(function(e) {
       e.preventDefault();
      var form = $(e.currentTarget); //the form
           valueToEvaul = form.find('#valueToEval').val(); //the value to evaul
        if (valueToEvaul  == '') {
            $(this).val("Please enter a value.");
            $(this).css("background", "#d42c43");
            $(this).css("border-color", "#d42c43");
            $(this).css("color", "#ffffff", "!important");
        } else {
            return true;
        }
    });
});

只需删除 return false

这里是fiddle:http://jsfiddle.net/y5yncmtc/2

$('button').click(function(e) {
    $('.required').each(function() {
       var form = $(e.currentTarget);
           valueToEvaul = $('#valueToEval').val();
        if (valueToEvaul == '') {
            e.preventDefault();
            $(this).val("Please enter a value.");
            $(this).css("background", "#d42c43");
            $(this).css("border-color", "#d42c43");
            $(this).css("color", "#ffffff", "!important");
        } else {
            return true;
        }
    });
});