わかりました、それで私はこれを理解しようと一日中過ごしました-しかし私はできません!これが私の問題です。
ASP.NETMVC4とRazorを使用しています。私の目標は、いくつかの基本的なAjaxを実行することです。私がやりたいのは、Ajaxが機能していることを証明するためにAjaxリンクによって更新されるdivをページに置くことだけです。
この問題は、Ajaxを機能させるために必要なスクリプトファイルに関係していると思います。デフォルトでは、スクリプトディレクトリすら持っていなかったので、スクリプトディレクトリを作成し、MicrosoftAjax.js、MicrosoftMvcAjax.js、jquery.unobtrusive-ajax.min.jsを見つけて、ヘッド内の_Layout.cshtmlに参照を追加しました。
これが私が持っているものです:
私の_Layout.cshtmlには、頭の中に次のものがあります
<script type="text/javascript" src="../../Scripts/MicrosoftAjax.js"></script>
<script type="text/javascript" src="../../Scripts/MicrosoftMvcAjax.js"></script>
<script type="text/javascript" src="../../Scripts/MicrosoftMvcValidation.js"></script>
<script type="text/javascript" src="../../Scripts/jquery.unobtrusive-ajax.min.js">/script>`
私のHomeController.csには次のものがあります。
[HttpGet]
public string GetStatus()
{
return DateTime.Now.ToLongTimeString();
}
私のAbout.cshtmlファイルの中に、私は次のものを持っています:
@Ajax.ActionLink("Ajax Test", "GetStatus", new AjaxOptions{UpdateTargetId="testtarget", HttpMethod = "Get"})`enter code here`
< div id="testtarget">Test Div</div>
アプリケーションをコンパイルすると、「AjaxTest」リンクと「TestDiv」テキストが表示されます。
「AjaxTest」をクリックすると、Home / GetStatusにリダイレクトされ、現在の時刻が空白のページに印刷されます。
これは明らかに私が期待したものではありません