2017-03-13 14 views
0

は、私は私のモデルを更新する必要があり、その後、jqueryのAjaxのポストC#のajax投稿のモデル値を更新しますか?

での私の見解は以下の私のテキストボックス

@model MvcApplication2.Models.Gender 

@Html.TextBoxFor(m => m.id, new { @class = "form-control", @readonly = "readonly" }) 

私は唯一の偽読んで、他の通常のテキストボックスを持っています。

ここ
function onChange(args) { 
     var value = JSON.stringify({ empcode: 0}); 
     $.ajax({ 
      type: "Post", 
      url: '@Url.Action("UpdateCode1", "Button")', 
      data: value , 
      contentType: 'application/json', 


     }); 
    } 

focusout二テキストボックスで呼び出さ

ポストAjaxのポストに与えられた値を持つ白の更新この第二の入力ボックスこの最初のボックス(角のように私はすべてのテンプレートを使用したくない)更新する必要があります私は正しく私の値を取得していますし、私は、コントローラ

[HttpPost] 
    public ActionResult UpdateCode1(Gender empcode) 
    { 
     return PartialView("UpdateCode1", empcode); 
    } 

の下にこれを掲示していますが、そのはtextboxfor値

任意の提案を更新していませんか?

+2

あなたは 'UpdateCode1'から返されているビューのコンテンツで何もしていません。あなたはAJAXリクエストの結果を処理する必要があります: '$ .ajax(...)。done(function(viewContent){/ * viewContentでUIを更新する* /});'本当に文字列化する必要はありませんあなたの 'value'。 –

+0

私は自動的にビューの返信で更新したい –

+2

レスポンスを取得し、必要なフィールドを更新するには、Ajaxで関数が必要です。 – Shan

答えて

1

ajax呼び出しの応答で何が行われる必要があるかを実行するには、ajaxを成功させるための関数が必要です。

$.ajax({ 
     type... 
     .... json', 
     success: function (response) { 
      $("#DivSelector").html(response); 
     } 
    }); 
    </script> 

そして、ajax呼び出し後にコンテンツをリフレッシュできるように、最初のテキストボックスを囲むdivを作成します。

<div id="DivSelector"> 
     @Html.TextBoxFor(m => m.id, new { @class = "form-control", @readonly = "readonly" }) 
    </div> 

1つのテキストボックスを他のテキストボックスの内容で更新するだけなら、なぜAjaxとコントローラが必要なのですか? jqueryだけでもできます。

関連する問題