3

我正在使用 ajax 检索表单,一旦我收到表单并将其添加到 DOM,我尝试使用 jQuery 对其进行一些验证,结果与预期不符。

我从 AJAX 调用插入页面的 HTML 是:

<form id="accept-form">
    <input id="txName" type="text" value="" name="txName" data-val-required="Please Select A Valid User" data-val="true">
    <span class="field-validation-valid" data-valmsg-for="txName" data-valmsg-replace="true"></span>
</form>

然后我将此表单附加到我的页面并尝试为其创建一个 jQuery 验证器,如下所示:

$("#accept-form").validate({
    rules: {
        txName: {
            required: true
        }
    },
    messages: {
        txName: {
            required: "Enter your name"
        }
    }
});

然后,当我按下提交按钮时,我有一个警报集,无论 txName 字段是否为空,都会返回 True:

alert($("#accept-form").valid());

尝试了几种不同的方法,如果有任何关于我可能做错的想法,我将不胜感激。

4

2 回答 2

4

anwser 就是我用验证器解析 html 的方式。

var form = $("#accept-form");

form.unbind();
form.data("validator", null);
$.validator.unobtrusive.parse(form);
于 2013-09-19T09:31:10.543 回答
1

将 javascript 代码放入文件中,并将文件链接到 ajax 成功时的主 html 页面。

如果您在 ajax 完成之前将其链接到您的页面,则不会发生任何事情。

于 2013-09-19T06:15:22.037 回答