Jquery验证设置(需要相同的行为)

时间:2014-09-23 16:38:53

标签: javascript jquery asp.net-mvc jquery-validate unobtrusive-validation

我正在使用jquery验证&引导。在我只有一个表单的视图中,我没有在表单上初始化验证器。我在输入下输入了输入和验证消息。造型很棒。红色消息等。

但是,当我在视图中有2个表单时,我需要自己创建一个验证器对象。但是,当我创建它并显示验证消息时,它们不具有相同的颜色/样式。

如何使用相同的设置初始化验证器?

在jquery.validate.unobtrusive中我找到了以下内容

options: {  // options structure passed to jQuery Validate's validate() method
                errorClass: defaultOptions.errorClass || "input-validation-error",
                errorElement: defaultOptions.errorElement || "span",
                errorPlacement: function () {
                    onError.apply(form, arguments);
                    execInContext("errorPlacement", arguments);
                },
                invalidHandler: function () {
                    onErrors.apply(form, arguments);
                    execInContext("invalidHandler", arguments);
                },
                messages: {},
                rules: {},
                success: function () {
                    onSuccess.apply(form, arguments);
                    execInContext("success", arguments);
                }
            },

所以我假设我需要那些设置。但是我如何调用该JavaScript文件中定义的函数(例如onErroronSuccess

enter image description here

1 Textbox:我不必调用validate()或其他任何东西

 @Html.TextBox("locationDate", "", new { @class = "dateInputMMYY form-control", @placeholder = "Move Date" })
 @Html.ValidationMessage("locationDate")

2 TextBox:我在表单上调用.validate():

@Html.TextBox("end", "", new { @class = "dateInput form-control search", @placeholder = "End Date" })
@Html.ValidationMessage("end")

1 个答案:

答案 0 :(得分:0)

经过长时间的研究和本文的帮助

http://nadeemkhedr.wordpress.com/2012/08/27/how-the-unobtrusive-jquery-validate-plugin-works-internally-in-asp-net-mvc/

我发现不引人注目的不会验证表单,因为输入元素缺少data-val =" true"属性。

将该属性添加到输入中会选择输入以进行不显眼的验证。