MVC Action返回Actionresult离开视图未修改或View actionresult

时间:2017-05-09 05:20:00

标签: c# asp.net-mvc razor actionresult

我在 MVC Razor 应用程序中的问题: 我使用基于 javascript 计时器的轮询控制器动作调用来请求是否已经有答案(顺便提一下Controller来电中的 WCF )。

如果有答案,则视图会通过正常的返回View(...)操作结果进行更新,该操作会正确更新视图。 但如果答案仍然不可用,我希望ActionResult不会更改或更新View。我试图返回EmptyResult,但随后我的网页变白了。如果可能的话,我不想修改我的控制器动作调用方法:

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

我还尝试了其他ActionResult类型,但他们修改了视图或返回空白或无效的View。轮询每 500毫秒完成,因此我不能让视图每 500毫秒更新一次。

1 个答案:

答案 0 :(得分: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/