web-dev-qa-db-ja.com

Ajaxを使用して読み込まれたフォームでMVC4クライアント側の検証が機能しない

Adminページがあり、ユーザーがリンクをクリックし、対応するPartialViewがあり、Webフォームは、Ajaxを使用してAdminページの特定のdiv内にロードされます。

すべての

"~/Scripts/jquery-2.0.3.js",
"~/Scripts/jquery.unobtrusive-ajax.js",
"~/Scripts/jquery.validate.js",
"~/Scripts/jquery.validate.unobtrusive.js"

Adminページ内で参照され、PartialViewが読み込まれると、jQueryクライアント側の検証は実行されません。仕事。

しかし、PartialView内でこれらのスクリプトを参照すると、すべてが正常に機能しますが、PartialViewごとにこれを行うつもりはありません。スクリプトは多数あり、それぞれがロードされるたびに、少なくとも2つこれらの.jsファイルのうち、サーバーから要求する必要があります再び

この問題なしに、親(Admin)ページ内にこれらのスクリプトを含める方法はありますか?

19
Ali

部分ビューのそれぞれでこれが必要です。

$(document).ready(function () {

    $.validator.unobtrusive.parse("#YourFormID");

});

基本的に、検証は動的にレンダリングされたフォームにバインドされていません。

47
Marko

基本的に、バリデーターはドキュメントレディの要素を解析します。必要に応じて自分で呼び出すこともできますが、誰かがすでにこれについて質問を投稿しています。そして、受け入れられた答えはおそらくまだ機能します。回答の1つには、必要に応じてさらに読むためのブログ投稿リンクがあります。

動的に追加されたフィールドを使用したクライアント側の検証

1
Chad Ruppert