0

Ajax フォームを送信していますが、コントローラーに到達すると Request.IsAjax が false を返すため、ページがリダイレクトされます。なぜこれを行うのか誰にもわかりますか?

私はインターネットを検索し、次のことを確認しました。

  1. の下の web.config に次のものがあります<appSettings>

    <add key="UnobtrusiveJavaScriptEnabled" value="true" />

  2. ソースを表示して、実行時にページに次のスクリプトがあります。

    <script src="/Scripts/jquery-1.5.1.min.js" type="text/javascript" />
    
    <script src="/Scripts/modernizr-1.7.min.js" type="text/javascript" />
    
    <script src="/Scripts/jquery-ui-1.8.11.min.js" type="text/javascript" />
    
    <script src="/Scripts/jquery.unobtrusive-ajax.min.js" type="text/javascript" />
    
    <script src="/Scripts/jquery.validate.min.js" type="text/javascript" />
    
    <script src="/Scripts/jquery.validate.unobtrusive.min.js" type="text/javascript" />
    

これがニシンであるかどうかはわかりませんが、ここでレンガの壁にぶつかったので言及します.Google Chromeでソースを表示すると、最初のスクリプトだけが色がフォーマットされています.構文は正しいですが、私には正しいように見えます! ヘルプ!

4

2 に答える 2

0

The problem is how I am submitting the form. I was just doing an onchange="submit()" in a dropdown list.

I've now realised that a javascript submit like that is not the same as an ajax submit! :)

If I use an <input type="submit" /> it works.

于 2011-09-19T13:04:50.313 に答える
0

スクリプト参照が Ajax 呼び出しの上にあることを確認してください。フィドラーをロードし、jquery スクリプトが見つかってロードされることを確認します。

于 2011-09-18T21:50:21.023 に答える