2012-12-03 65 views
1

更新textarea值而不刷新整個頁面的最簡單方法是什麼?控制器中的異步方法會改變textarea的值,但我怎樣才能更新視圖?我已閱讀使用SignalR推送更新,這種方法會有幫助嗎?使用MVC 4和Razor定期更新textarea值

+0

你是什麼意思的「如何更新視圖」? –

+0

通過「更新視圖」,我的意思是根據控制器完成的後端更改來更改視圖元素屬性。 – Xardas

+1

您可以發送更多數據而不是僅發送textarea內容,並根據這些數據更新DOM元素 –

回答

0

在你AjaxOptions指定一個JavaScript方法調用的onSuccess

 new AjaxOptions { OnSuccess = "UpdatePage(data)" }) 

從您的行動發回一個JsonResult在控制器

 return new JsonResult 
     { 
      Data = new 
      { 
       variable1 = value1, 
       variable2 = value2, 
       variable3 = value3 
      }, 
      JsonRequestBehavior = JsonRequestBehavior.AllowGet 
     }; 

並在JavaScript方法過程中,您發回

數據
function UpdatePage(data) {    
     $("input[name='UpdateMe1']").val(data.variable1); 
     $("input[name='UpdateMe2']").val(data.variable2); 
     $("#UpdateMe3").html(data.variable3); 
    }