我一直在阅读很多关于不引人注意的验证的帖子。我试图了解visual studio在空MVC3模板中提供的内容与包含jquery.unobtrusive js文件之间的差异(如果有的话)。目前,这是我在源中的输入看起来像
<input class="input-validation-error" data-val="true" data-val-required="The Surname field is required." id="Surname" name="Surname" type="text" value="" />
这是不引人注意的验证吗?
答案 0 :(得分:2)
使用HTML语法中的data-
属性,看起来您的页面已启用,可进行不显眼的客户端验证。
使用传统的客户端验证,将在服务器端生成用于验证控件的javascript,并将其与响应中的HTML一起传递给浏览器。
因此,除了HTML内容之外,还会在<![CDATA[ ]]>
然而,通过不显眼的客户端验证而不是发出内联javascript,它使用HTML5兼容Data attributes
ASP.NET MVC 3利用jQuery进行不显眼的客户端验证。 data-
属性将从jquery.unobtrusive js
默认情况下,在ASP.NET MVC 3中禁用不显眼模式。要使用此功能,您需要同时启用客户端验证和不引人注目的javascript验证。
这可以在web.config中设置
<configuration>
<appSettings>
<add key="ClientValidationEnabled" value="true"/>
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>
</appSettings>
</configuration>
答案 1 :(得分:0)
简短回答是的,看起来你使用不引人注目的验证。要更深入地了解它是什么以及它是如何工作的,请阅读http://bradwilson.typepad.com/blog/2010/10/mvc3-unobtrusive-validation.html
答案 2 :(得分:0)
MVC输出data- *属性,如果查找这些属性,jquery提供实际的客户端实现。
http://completedevelopment.blogspot.com/2011/02/unobstrusive-javascript-in-mvc-3-helps.html