これはかなり簡単なはずですが、私は運がないといくつか試しました。MVC3 Html.TextBoxForの内容が変更されたときにフォームを送信
私は、ページに一連のHtml.TextBoxFor
フィールドを持っていて、それぞれは独自のAjax.BeginRouteForm
の中にあります。各ボックスの横には送信ボタンがあり、これをクリックすると、必要に応じてAjaxの更新が実行されます。
ユーザーがフィールド(onchange
イベント)の値を変更すると、フォームは現在送信ボタンを使用して同じ方法で送信されるように自動化したいと思います。
htmlattributesを使用してonchange
イベントにJavaScript関数を割り当てようとしましたが、これによりフォームが送信されますが、ajax形式ではなくページがリダイレクトされます(送信ボタンは正しく動作します)。
@(Html.TextBoxFor(model => answer.Value, new { onchange = "document.forms[" + answer.AnswerID + "].submit()" }));
(幸い私のanswer.AnswerID
は数値で、フォームのコレクション内の適切な形式の数値の位置にまで一致して、私は私のJavaScriptコードをhtmlencodingた名前が、レイザー(か何か)でそれらを参照して...)
私の唯一の推測では、私がonchange
イベントにコードを直接取り付けることにより、何かを壊すんだということですが、私はそのイベントのチェーンをフックする「正しい」方法へと途方に暮れてよ。
ご丁寧にお気軽にご記入ください:) – jasongullickson