Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery显示表单警报框_Jquery_Jquery Validate_Alert - Fatal编程技术网

jQuery显示表单警报框

jQuery显示表单警报框,jquery,jquery-validate,alert,Jquery,Jquery Validate,Alert,嗨,我正试图显示一个警告或风格可弹出框,说空字段时,提交按钮按下。下面的代码在我添加alertEmpty字段后停止工作 只需将错误属性替换为适当的属性 更新:: 刚查过jQ文档 用submitHandler替换错误处理程序 我假设这就是代码引用的jQuery插件 不能在类声明中使用警报。您将不得不这样重写它: var validator = $("#reg_form").validate({ errorLabelContainer: $("#reg_form div.error"),

嗨,我正试图显示一个警告或风格可弹出框,说空字段时,提交按钮按下。下面的代码在我添加alertEmpty字段后停止工作

只需将错误属性替换为适当的属性

更新::

刚查过jQ文档

用submitHandler替换错误处理程序

我假设这就是代码引用的jQuery插件

不能在类声明中使用警报。您将不得不这样重写它:

var validator = $("#reg_form").validate({
    errorLabelContainer: $("#reg_form div.error"),
    meta: "validate",
    submitHandler: function( form ) {
        alert("Empty Fields!!");
    }
});

或者使用invalidHandler:functionform、validator而不是submitHandler作为您将来的参考


validate正在接受一个json字符串,该字符串的格式应为{'key1':'value1','key1':'value1'},因此键值和键值对之间必须有分号,键值对用逗号分隔,因此请将其用作键值对,即{'error':函数{alert'hello';}

我在接受另一个答案后发布此消息,为了将来读者的利益,因为其他答案似乎都包含一些技术错误和缺乏解释

当.validate只接受键:值对形式的预定义选项时,不能简单地将JavaScript插入到.validate中。有关所有可用选项,请参阅文档:

如您所见,您需要分配alertEmpty字段!!;到一个可用回调处理程序上的函数中。由于消息为空字段!!,我将选择invalidHandler回调选项,invalidHandler是提交无效表单时自定义代码的:回调

相反,submitHandler:是:回调,用于在表单有效时处理实际提交由于消息包含空字段!!,你不想在有效的表格上显示

最好将.validate包含在document.ready函数中,以确保在初始化插件时完整构建HTML表单

工作演示:

请注意:在本例中,将.validate赋值给名为validator的变量没有任何用处。由于.validate只应在DOM上调用一次,以便初始化插件,因此您不需要再次引用它,因此将其分配给变量并没有什么好处

如果需要触发表单的验证测试,或者需要表单当前状态的布尔值,只需使用


submitHandler在表单成功验证时阻止并替换浏览器的默认提交处理程序,因此我猜错误消息应该在invalidHandler中。如果您进一步阅读文档,submitHandler:是一个回调,仅在表单有效时才会激发。因此,如果消息是空字段,那么这真的没有任何意义。请展示您的HTML,以方便将来的读者。是的,但我只是让他对json字符串有了一些清晰的认识,并不是说要准确地使用json字符串,希望他可能不会使用alert来代替键值对:,这在整个jquery使用过程中都会很有帮助。根据您的声誉,期待您提供一些建议以满足要求!。我的建议是看看其他答案的格式,力求准确、解释和清晰。如果你只是想给OP一个小建议,那么它应该保留为评论而不是回答。对,希望我的信息可以帮助他,它涵盖了后两个的部分,而且你的信息肯定对我有帮助。谢谢:
var validator = $("#reg_form").validate({
    errorLabelContainer: $("#reg_form div.error"),
    meta: "validate",
    error: function(){alert("Empty Fields!!")};
});
var validator = $("#reg_form").validate({
    errorLabelContainer: $("#reg_form div.error"),
    meta: "validate",
    submitHandler: function(myForm){alert("Empty Fields!!")};
});
var validator = $("#reg_form").validate({
    errorLabelContainer: $("#reg_form div.error"),
    meta: "validate",
    submitHandler: function( form ) {
        alert("Empty Fields!!");
    }
});
$(document).ready(function() {
    var validator = $("#reg_form").validate({
        errorLabelContainer: $("#reg_form div.error"),
        meta: "validate",
        invalidHandler: function(form, validator) {
            alert("Empty Fields!!");
        }
    });
});
$("#reg_form").valid();  // triggers a validation check without having to submit
if ($("#reg_form").valid()) { ...  // tests to see if the form is valid