6

Ajax.ActionLink Htmlヘルパーを使用したいので、jquery.unobtrusive-ajax.min.jsライブラリが必要ですが、IEは常にこのエラーを表示しています。

Microsoft JScriptランタイムエラー:プロパティ'unobtrusive'の値を設定できません:オブジェクトがnullまたは未定義です

解決策はjquery.validate.min.jsとjquery.validate.unobtrusive.min.jsの使用法であることを読みましたが、サーバー側でajax呼び出しを認識できません。

4

2 に答える 2

21

解決策はjquery.validate.min.jsとjquery.validate.unobtrusive.min.jsの使用法であることを読みました

いいえ、これら2つのスクリプトはとは関係ありませんjquery.unobtrusive-ajax.min.js。それらは目立たない検証に使用されます。Ajax。*ヘルパーの場合、必要なのはjQueryand (その順序jquery.unobtrusive-ajax.min.jsに含まれています)だけです。

したがって、目立たないAJAXには、次のものが必要です。

<script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")" type="text/javascript"></script>

目立たない検証を使用する場合は、後で2つのスクリプトを(この順序で)含めることもできます

<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>

確認する必要があるもう1つの非常に重要なことはMicrosoft*.js、プロジェクトからスクリプトの痕跡を完全に削除したことです。これらのスクリプトは廃止され、ASP.NETMVC3以降はデフォルトで使用されなくなりました。また、web.configで控えめなAJAXが有効になっていることを確認してください。有効にしないと、システムは従来のMicrosoftajaxスクリプトにフォールバックします。

<appSettings>
    <add key="webpages:Version" value="1.0.0.0"/>
    <add key="ClientValidationEnabled" value="true"/>
    <add key="UnobtrusiveJavaScriptEnabled" value="true"/>
</appSettings>
于 2012-07-04T10:13:46.067 に答える
2

これは古い投稿ですが、控えめなajaxの最新情報が必要な場合は、次の場所にあります。

http://nuget.org/packages/Microsoft.jQuery.Unobtrusive.Ajax/3.0.0-beta2

最新のjquerylibで動作する他の安定したバージョンがあります。

于 2013-07-18T00:20:49.377 に答える