問題タブ [ajax.beginform]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
18054 参照

jquery - InsertionMode.ReplaceはAjax.BeginFormでどのように機能しますか

Ajax.beginformasp.net mvcビュー内に 次のように表示されます。ここで、ajax呼び出しの結果が次のように置き換え<div id= "searcharea">られます。-

<div id= "searcharea">したがって、最初はajax呼び出しの結果に置き換えられ、その後はavilalbeにならないため、1回の検索しか実行できません。また、anther ajax呼び出しを実行しようとすると、検索は実行されません。<div id= "searcharea">結果を置き換えるためにもっと。

しかし、実際に起こったことは、問題なく複数の検索を実行できたということです。つまり、これはInsertionMode.ReplaceDOM要素を置き換えず、このDOM内にajax呼び出しの結果のみを挿入することを意味します。最初のajax呼び出しに置き換えられたとしても、DOM要素を複数回参照する方法がわかりません??? !! 誰かがこれがどのように起こるかを説明できますか?BR

0 投票する
1 に答える
2175 参照

asp.net-mvc-3 - 部分ビューと永続的なルートデータの問題を伴うMVC3Ajax.BeginForm

メインビューがあり、このビューのURLには、次のようなAction / Controller/Areaとidの値があります。

http:// localhost:56513 / Incident / IncidentHome / Index / 8c02a647-a883-4d69-91be-7ac5f7b28ab7

このメインビューには、Ajaxを介してコントローラーのメソッドを呼び出す部分ビューがあります。この部分ビューは、親ページのURLのID値を知っている必要があります。これを行う方法は、「ParentActionViewContent」を使用することでわかりました。何かのようなもの:

これで、コントローラーメソッドを呼び出すのに最適です。IDは正しく渡されるため、コントローラーはルートデータでIDを確認できます。idを使用してデータベース呼び出しを実行してから、partialviewを再度返します。問題は帰りにあります。ajax.beginformのViewContext.ParentActionViewContext.RouteData.Values["id"]。ToString()ビットで「オブジェクトのインスタンスに設定されていないオブジェクト参照」を取得しましたが、targetidが更新されません。

明らかに私は何か間違ったことをしているに違いありません。他の誰かがAjaxを介して親ビューのルートデータを表示するためのより良い方法を持っていますか?

0 投票する
1 に答える
909 参照

javascript - Ajax.BeginFormは完全なポストバックを強制します

Ajax.BeginForm(MVC3、邪魔にならない)に完全なポストバックを強制するにはどうすればよいですか?

MVC2では、「onclick」ハンドラーと「onsubmit」ハンドラーをクリアしました。MVC3でこれを行うにはどうすればよいですか?

PS。興味のある方のために、ファイルのアップロードにこれが必要です。ファイルがアップロードされていない場合-ajaxは問題ありません。ファイルがアップロードされている場合は、完全なポストバックを実行させます。

アップデート:

「jquery.unobtrusive-ajax.js」のソースコードを見た後、私はこれを見ました:

だから私はこれを思いついた、そしてそれはうまくいく:

しかし、これは少し「ハッキー」なように見えます。フォームからすべての送信中のイベントをクリアする「正当な」方法はありますか?更新された質問は次のようになっていると思います。別のセレクターを使用する「die」ステートメントを使用して「ライブ」イベントハンドラーをクリアするにはどうすればよいですか。

0 投票する
2 に答える
937 参照

asp.net-mvc-3 - Ajax.BeginFormは、リクエストがリダイレクトされたかどうかを確認します

非同期リクエストフォームのajaxフォームがリダイレクトされたかどうかを判断するにはどうすればよいですか?私の場合、ユーザーのセッションが閉じられると、リクエストはログインページにリダイレクトされます。

OnComplete、OnSuccess、およびOnBeginイベント(OnFailureは呼び出されません)の引数を確認しようとしましたが、誰も助けませんでした。

現在、セッションが終了した場合に備えて、ログインページ全体が現在のページのdivに埋め込まれています。

これを回避する方法を私が見る唯一の方法は、次のようなコードです。

しかし、この解決策は少し醜いようです。

何か案は?

0 投票する
3 に答える
2042 参照

ajax - Ajax.BeginFormの$.ajaxSetup

$ .ajaxSetupは、jqueryのajax呼び出しに使用されます。jquery ajaxを使用する場合、これは完全に正常に機能します。

ただし、MVCではAjax.BeginForm()を使用します。コールバックハンドラーはOnFailure、OnSuccess、OnBeginです。

Ajax.BeginForm()に$.ajaxSetupを使用する方法はありますか?

アップデート

たとえば、10か所でAjax.BeginForm()を使用しましたが、すべてにOnFailureハンドラーを記述する代わりに、jquery$.ajaxSetupのような共通の場所に単一の共通のOnFailureを記述したいと思います。それを行う方法はありますか?

0 投票する
1 に答える
976 参照

ajax - MVC3 ASP.NET Ajax BeginForm は、他の Ajax によって挿入されると動作しないことがあります。

まったく機能しないページにAjaxフォームをいくつか入れようとしていますが、送信時にリクエストを送信しません.firebugに注意してください.フォームはajaxによってページにロードされていますが、ロードされている他のフォームがありますajax によって jquery UI ダイアログに形成され、正常に動作しています。これが私の部分ビュー コード全体です (アクション "SeacrhTasksTable" の部分が機能していません)。レンダリングされた HTML 全体を添付しますが、非常に大きいです。

フォームの HTML

0 投票する
1 に答える
1149 参照

asp.net-mvc - Ajax.BeginForm が無効なフォーム要素を送信しています

MVC3 と Ajax.BeginForm を使用すると、驚くべきことに、mvc ajax フォームが属性 disabled="disabled" を持つ要素を送信することがわかりました。

選択入力とテキスト入力の両方をテストしました。

それらは送信されるべきではなく、Html.BeginForm を使用すると送信されないため、私は驚きました。

これに対する隠しオプションまたは回避策はありますか?

【編集例】

掲載データ

Html.BeginForm は _disabled 値を投稿しません。

0 投票する
2 に答える
3504 参照

asp.net - AJAX.BeginForm が空の FormCollection リストを MVC コントローラーに送信する

私は非常に単純なコードを持っています:

そしてコントローラー側には次のコードがあります

問題は空の「FormCollection」です。考えられる理由は何ですか?

0 投票する
1 に答える
823 参照

jquery-ui-tabs - Ajax.BeginForm は Json データを Jq UI タブに戻します

Ajax.BeginForm を取得して関数を呼び出し、それをシーケンスの最後のタブに戻し、そこからテーブルを追加しようとしています。

これは基本的な部分ビューになります...

これは、関数を非同期的に呼び出す方法です...この時点まではすべて正常に機能します...

これが完了したら、onSuccess にリストされている switchToResultTab 関数を呼び出すことを期待しています...これは、.tabs() jquery メソッド呼び出しが既に含まれているパーシャルのスクリプトにあります。唯一の問題は、私がその機能に入らないことですか? 私はデバッガーをヒットしたことがないので、何かが起こっていることを私に伝えており、その関数を呼び出すことはありません...何が間違っていますか?

更新:私はこのことをデバッグしていて 、何が起こっているのかを理解しようとしています. 私のフォームは ajax 送信ではなく実際の送信を行っているようです。それが私が今のところ推測できることです。なぜこれが起こっているのか、私にはまったくわかりません。 継続 *更新: いくつかの異なることを試した* マイナーな更新... Ajax.BeginForm と格闘した後、以前の試行済みの真の Html.BeginForm メソッドに戻り、独自の jquery 関数を作成しました...

どちらの場合も、これまでに Jquery ライブラリがロードされていないように見えます...ロードした jquery ライブラリの 1 つと何らかの形で競合する必要があります...おそらく最後のタブにjqgridをロードしたという事実は、ある種の競合を引き起こしていますか?

0 投票する
1 に答える
2007 参照

jquery - Ajax.beginform ドロップダウンを使用したポストバック フォーム

MVC アプリケーションでは、フォームにドロップダウン リストがあります。データをポストバックするために Ajax.Beginform() を使用しています。

Ajax.Beginform() を使用して、ドロップダウン選択インデックス変更イベントをポストバック フォーム データに使用する方法はありますか。提案はありますか?