2

私のページには、AJAXログオンを実装するために、次のリンクがあります。

<%= Ajax.ActionLink("Log On", "LogOn", "Account", new AjaxOptions {
    UpdateTargetId = "lll",
    Confirm = "blah"}) %>

近くにidlllのdivがあります。リンクをクリックすると、何とか確認が表示されます(デバッグ目的で追加されただけで、それがない場合の動作は同じです)が、何も起こりません。サーバーにリクエストが到達することはありません(LogOnアクションメソッドにブレークポイントがあるため)。それはChromeとIE8にあります。FF3では、ログオンビューを開きますが、ページとして、AJAXを介してダウンロードしません。

何が間違っているのでしょうか?

4

3 に答える 3

5

問題は、ajax アクション リンクがデフォルトで POST 要求を作成し、それが他の LogOn メソッド (POST を受け入れるメソッド) に向けられていたため、ブレークポイントに到達しなかったことです。また、必要な POST データが送信されていませんでした。アクション リンクに HttpMethod を追加すると、次のように修正されました。

<%= Ajax.ActionLink("Log On", "LogOn", "Account", new AjaxOptions {
    UpdateTargetId = "lll",
    Confirm = "blah",
    HttpMethod = "Get"}) %>
于 2009-06-01T13:37:07.160 に答える
1

ページに JavaScript エラーがあり、AJAX リクエストを処理するために挿入された JavaScript が起動しないようです。すべての Javascript が正しくロードされているかどうかを確認するために、ページのロード時に FireBug でそれを調べましたか? また、Microsoft JavaScript ライブラリのバージョンは、使用している MVC のバージョンと一致していますか? バージョンの進行中に、プロジェクト内の Microsoft JavaScript ライブラリのバージョンを手動で更新する必要があったことを少なくとも 1 回覚えています。あなたのプロジェクトが複数のバージョンの MVC を通じて存在していた場合、新しいライブラリを追跡し (新しいプロジェクトを作成して古いプロジェクトにコピーするか、インストール ディレクトリのプロジェクト アーカイブを開いて手動で抽出します)、それらをインストールすることをお勧めします。 .

于 2009-06-01T13:27:21.623 に答える
0

head セクションに ajax クライアント スクリプトを含めましたか。

  • MicrosoftMvcAjax.js
  • MicrosoftAjax.js
于 2009-06-01T13:12:16.803 に答える