更改视图内容而不刷新页面或创建新视图

时间:2016-11-21 08:25:05

标签: c# asp.net-mvc web

我正在进行多人游戏测验,我目前处于这样一种情况:我必须更改测验视图的内容,我有1个问题和4个答案,但每次用户点击答案时(是一个按钮),我需要用新值填充按钮(答案)和问题。

实现此页面刷新的简单方法是什么,而不必每次都在我的URL中携带ID作为参数?

1 个答案:

答案 0 :(得分:1)

e.g。你可以使用ajax

C#

public class CustomerController : Controller 
{
   public ActionResult Index() 
   {
       return View();
   }

   [HttpPost]
   public ActionResult GetUpdate()
   {
      return Json(new { success = true, newPar = 4 }, JsonRequestBehavior.AllowGet);
   }
}

的Ajax:

$.ajax({
        url: '@Url.Action("GetUpdate")',
        dataType: "json", 
        type: "POST", 
        contentType: 'application/json; charset=utf-8', 
        cache: false, 
        data: {}, //pass argument if needed
        success: function (data) {
            if (data.success) { 
                alert(data.newPar);
            }
        },
        error: function (xhr) {
            alert('ERROR');
        }
    });

另一种选择是使用SignalR:

libary为您完成所有操作,您可以从服务器端调用方法 https://www.asp.net/signalr/overview/getting-started/tutorial-getting-started-with-signalr-and-mvc