2017-05-09 44 views
0

我的問題: 我使用基於一個的JavaScript定時輪詢控制器動作調用請求,如果已經有一個答案(順便說一句,通過WCF調用Controller)。MVC行動歸國任的ActionResult離開視圖未修改或在<strong>MVC剃刀</strong>應用視圖的ActionResult

如果有答案,視圖會通過正常返回View(...)操作結果進行更新,該操作結果會正確更新視圖。 但如果答案仍然不可用,我想要一個ActionResult不會更改或更新View。我試圖返回EmptyResult,但隨後我的網頁變成白色。我想如果可能的話不修改我的控制器操作調用方法:

@using (Html.BeginForm("actionTryGetNewSystemSentence", "Conduct", FormMethod.Post, 
     new { onsubmit = "OnTryGetNewSystemSentence(event)", id = "idConductForm" })) 
     { ...} 

我也嘗試過其他ActionResult類型,但他們要麼修改視圖或返回空白或無效View。輪詢每500毫秒完成,所以我不能讓視圖更新每個500毫秒

+0

鏈接你試圖讓基於定時器一個Ajax請求或者你只是重新加載頁面? – sachin

回答

0

您在這裏使用的是Html.BeginForm這意味着它不是ajax調用。您必須指定Ajax.BeginForm並在jquery中定義一個函數,當結果成功或失敗時您將調用該函數並相應地更新html。

@using (Ajax.BeginForm("actionTryGetNewSystemSentence", "Conduct", new AjaxOptions { HttpMethod = "POST", onsubmit = "OnTryGetNewSystemSentence(event)", OnSuccess = "Successmethod(event)", OnFailure = "Failuremethod(event)", id = "idConductForm" })) { ...}) 

檢查以下

http://www.c-sharpcorner.com/UploadFile/0c1bb2/ajax-beginform-in-Asp-Net-mvc-5/

+0

非常感謝!看起來很有希望。我會在本週晚些時候嘗試。 – AnySharp

+0

我還有很多其他問題,但你的助手讓我朝着正確的方向前進。現在我有惱人的問題,我無法刷新/重新加載我的剃刀頁面從JS。 – AnySharp