1

目立たない検証に関する多くの投稿を読んでいます。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="" />

これは目立たない検証ですか?

4

3 に答える 3

2

HTML 構文のdata-属性を使用すると、控えめなクライアント側検証がページで有効になっているように見えます。

従来のクライアント側検証では、検証対象のコントロールの JavaScript がサーバー側で生成され、ブラウザーへの応答で HTML と共に渡されます。したがって、HTML コンテンツに加えて、インライン スクリプト データが埋め込まれます。<![CDATA[ ]]>

ただし、インライン JavaScript を発行する代わりにクライアント側の控えめな検証を使用すると、HTML5 互換のデータ属性を利用できます 。ASP.NET MVC 3 は、目立たないクライアント側の検証に jQuery を使用します。data-属性は、内部で定義された jQuery 関数から操作されますjquery.unobtrusive js

デフォルトでは、控えめなモードは ASP.NET MVC 3 でオフになっています。これを利用するには、クライアント側の検証と控えめな JavaScript 検証の両方を有効にする必要があります。

これは web.config で設定できます

<configuration>    
  <appSettings>        
    <add key="ClientValidationEnabled" value="true"/>        
    <add key="UnobtrusiveJavaScriptEnabled" value="true"/>    
  </appSettings>
</configuration>
于 2012-05-24T02:06:04.177 に答える
0

簡単な答えはい、目立たない検証を使用しているようです。それが何であるか、そしてそれがどのように機能するかをより深く理解するには、http://bradwilson.typepad.com/blog/2010/10/mvc3-unobtrusive-validation.htmlを読んでください。

于 2012-05-24T01:30:21.083 に答える
0

MVCはdata-*属性を出力し、jqueryはそれらの属性を探す場合に実際のクライアント側の実装を提供します。

http://completedevelopment.blogspot.com/2011/02/unobstrusive-javascript-in-mvc-3-helps.html

于 2012-05-24T01:30:52.067 に答える