首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用after或append插入的字段的验证

使用after或append插入的字段的验证
EN

Stack Overflow用户
提问于 2013-08-21 18:10:57
回答 1查看 1.7K关注 0票数 0

我有一个带有ASP MVC3的表单,input字段是用jQuery validation plugin v1.8 (MVC3的默认jQuery验证)验证的。这可以很好地工作,但问题是当我使用afterappend函数插入要验证的新字段时。

如果我有这个HTML:

代码语言:javascript
复制
<label for="name">Name: </label>
<input class="text-files" data-val="true" data-val-required="Name missing" id="name" name="name" type="text" value="">
<span class="field-validation-error" data-valmsg-for="name" data-valmsg-replace="true"></span>

它工作正常,但如果我用afterinsert函数插入它,它就不能工作:

代码语言:javascript
复制
$(window).load(function () {
    $('#addName').click(function (event) {
        event.preventDefault();
        var $newdiv = $('<label for="name">Name: </label><input class="text-files" data-val="true" data-val-required="Name missing" id="name" name="name" type="text" value=""><span class="field-validation-error" data-valmsg-for="name" data-valmsg-replace="true"></span>');

        $('.names').append($newdiv);
    });
});
EN

回答 1

Stack Overflow用户

发布于 2013-08-21 18:21:15

验证规则构建在DOM加载时可用的元素上。因此,您需要使用以下代码来告诉jQuery validation在验证中包含另一个字段:

代码语言:javascript
复制
$('#addName').click(function (event) {
    event.preventDefault();
    var $newdiv = $('<label for="name">Name: </label><input class="text-files" data-val="true" data-val-required="Name missing" id="name" name="name" type="text" value=""><span class="field-validation-error" data-valmsg-for="name" data-valmsg-replace="true"></span>');
    $("#name").rules("add", "required"); // let validate know about the new field.

    $('.names').append($newdiv);
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18354648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档