2009-04-01 6 views
1

複数の入力を含むページがあります。Ajax.BeginFormを使用して入力ごとにフォームを作成しています。データは私のコントローラに送信され、保存されている -Ajax.BeginFormを使用したASP.NET MVCの投稿では、空白の表示が返されます。

<% using (Ajax.BeginForm(new AjaxOptions() { InsertionMode = InsertionMode.InsertAfter, HttpMethod = "POST" })) 
    { %> 
    <input class="smallInput" type="text" name="duration"/> 
    <input type="submit" value="Add" /> 
<% } %> 

コントローラは、これは動作します。この

[AcceptVerbs("POST")] 
    public ActionResult AddExercise(FormCollection form) 
    { 

     // some save logic... 

     return Content(string.Empty); 

    } 

のように見えます。

ただし、これが発生するたびに私のページは空白のページに置き換えられます。私のアクションからビューを明示的に返すと、代わりにそのビューが表示されます。しかし、私はフォームを提出して、既存のページをそのままの状態にしておきたい。

答えて

5

を。それらを加えることは問題を解決することを含む。

+0

ファイルを指定すると、どのファイルですか? MVC 2のサイトでhttp://ajax.aspnetcdn.com/ajax/mvc/2.0/MicrosoftMvcAjax.jsが表示されていますが、私が使用するときには 'Type'が定義されていないというエラーが表示されます。 –

+0

ニック - これは4年前に投稿されました。私は特定のファイルがもはや失われていたことを知らない。 – Jason

+0

jquery-ajax-unobtrusive - > https://github.com/aspnet/jquery-ajax-unobtrusive/blob/master/src/jquery.unobtrusive-ajax.js –

1

あなたが更新したいDOM要素のidを指定する必要があります。私は私のページでMVCのAjax JavaScriptファイルを含めていなかった

<% using (Ajax.BeginForm(new AjaxOptions() { 
    UpdateTargetId = "someID", 
    InsertionMode = InsertionMode.InsertAfter, 
    HttpMethod = "POST" })) 
{ %> 
    <input class="smallInput" type="text" name="duration"/> 
    <input type="submit" value="Add" /> 
<% } %> 
関連する問題