2013-10-06 6 views
6

対html.beginform使用する場合にはそれはajax.beginform

...私は(私の心の中で)明確な説明は、対象データを使用する必要がありますどのような状況では、まだ存在しないことを確認したすべての記事の後に驚くべきことです

私はhtml.beginformについて知っています、ポストバックを実行し、コントローラメソッドにデータをポストし、別のメソッドにリダイレクトするか、同じビューをユーザに返します。

私はあなたが(私が間違っているなら、私を修正)しなければならない、ajax.beginformのために知っているが、コントローラのメソッドから結果のポストされたデータは、上のdivタグ内に部分図のようなものになりますUpdateTargetIDを指定しますフォームと同じページ。フォームが送信された後、別のアクションメソッドにリダイレクトできないことはわかっています。

これらの両方の条件の下では、ユーザがコントローラを介して送信および処理するために、別のラウンドのデータを入力させることができます。

したがって、他のアクションメソッドにリダイレクトする必要がない限り、なぜajax.beginformを使用しないのですか?

私が想像できる唯一のことは、html.BeginFormメソッドはおそらくデータ入力の繰り返しに適していますが、ajax.beginFormメソッドを使用して結果をユーザーに表示する彼らがどのような情報をフォームに入力したか(ほぼ1回限りのこと)。 btw、私はAjax.BeginFormを使うのが大抵の場合、私は自分自身と矛盾していると言っています。

誰も私に比較的簡単な説明を与えてくださいこれらの方法のそれぞれを使用する必要がありますか?

答えて

1

あなたが言ったように、ajaxコールは同じページにとどまる必要があるときに使用します。ほとんどの場合、シングルページアプリケーションで使用されます。 (あなたがここでstackoverflowで答えを出すときのように、それはページへの部分的なリフレッシュです)

しかし、通常は別のビュー(ページ)に行きたいです。 (あなたが新しいユーザーとして登録しているサイトの一部で、送信した後にホームページにリダイレクトされた場合)

関連する問題