我正在使用Razor,C#和.NET Framework 4.6.1开发ASP.NET MVC 5应用程序。
我在使用jQuery动态生成的输入字段上验证时遇到问题。
这是ASP.NET Razor生成的:
<input class="productClass" data-val="true" data-val-length="No más de 50 caracteres" data-val-length-max="50" data-val-required="Campo necesario" id="Configurations[0].Name" name="Configurations[0].Name" type="text" value="Estuche" />
<span class="field-validation-valid" data-valmsg-for="Configurations[0].Name" data-valmsg-replace="true"></span>
这是我用jQuery生成的:
<input type="text" name="Configurations[3].Name" id="Configurations[3].Name" data-val-required="Campo necesario" data-val-length-max="50" data-val-length="No más de 50 caracteres" data-val="true" class="productClass" ></input>
<span data-valmsg-replace="true" data-valmsg-for="Configurations[3].Name" class="field-validation-valid"></span>
两者都具有相同值的相同数据字段。唯一不同的是我生成的那个在其属性中有不同的顺序。
验证适用于ASP.NET Razor自动生成的输入,但我的工作并不起作用。我可以在NAME上设置一个空值,但它不会验证它。
你知道有什么不对吗?有什么建议吗?答案 0 :(得分:2)
在脚本中生成动态字段时添加以下代码:
$("form").removeData("validator");
$("form").removeData("unobtrusiveValidation");
$.validator.unobtrusive.parse("form");