小编use*_*486的帖子

为子集合验证动态添加的输入元素

我正在使用带有不显眼验证的 Asp.Net Core MVC。我有一个表单,它允许为子集合动态添加输入元素,我想在客户端验证中包含这些元素。我已经看到了一些以前的解决方案,例如将 jQuery 验证器规则添加到 ASP 中动态创建的元素,但客户端验证仍然没有发生。

这是我的代码。首先,当单击按钮时,将克隆一个 html 块并将其附加到表单列表中。

<li class="newVideoRow well-sm">
    <div>
        <input type="hidden" name="Videos.Index" value="#" />
        <label>Video Title:</label>
        <input name="Videos[#].VideoTitle" class="videoTitle form-control inline" placeholder="Enter a short title for this video" value="" />
    </div>
    <div>
        <label>Video Link:</label>
        <input name="Videos[#].VideoUri" type="url" class="videoUri form-control inline" value="http://" />
    </div>
</li>
Run Code Online (Sandbox Code Playgroud)

然后,克隆列表项元素的 jQuery 操作 [#] 索引添加验证属性,并可能重新解析不显眼的验证器。

        $('#addNewVideo').click(function(){
            var nr = $('.newVideoRow').clone();
            nr.removeClass('newVideoRow').addClass('videoRow');
            var index = (new Date).getTime();
            $(nr).find('div input').each(function(divIndex, divElement){
                $(divElement).attr('name', $(divElement).attr('name').replace('#', index));
                var inputName = $(divElement).attr('name');
                if ($(divElement).attr('type') …
Run Code Online (Sandbox Code Playgroud)

jquery unobtrusive-validation asp.net-core-1.0

2
推荐指数
1
解决办法
1724
查看次数