gpt4 book ai didi

c# - MVC 3 局部 View 上的 jQuery.load() 仅调用服务器一次(不是重新绑定(bind)问题)

转载 作者:太空宇宙 更新时间:2023-11-03 11:24:35 25 4
gpt4 key购买 nike

以下代码显示了1 个 View 、1 个局部 View 1 个 Controller 。该 View 包含一个用于获取当前时间的按钮和一个显示该时间的部分 View 。通过 jQuery 连接的按钮点击调用局部 View 容器上的 $.load()

第一次点击按钮效果很好,但没有后续调用到达服务器;函数触发,负载触发,但服务器从未收到请求。

知道问题出在哪里吗?

Index.cshtml

@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<title>ContainerView</title>
<script src="@Url.Content("~/Scripts/jquery-1.7.2.min.js")" type="text/javascript"></script>
<script type="text/javascript">
$(function() {
$('#btnRefresh').click(function () {
$("#divTime").load('@Url.Action("GetTime")');
});
});
</script>
</head>
<body>
<div>
<input id="btnRefresh" type="button" value="Get Time"/>
<div id="divTime">
@Html.Partial("_Time")
</div>
</div>
</body>
</html>

_Time.cshtml

@ViewData["Time"]

ContainerController.cs

using System;
using System.Web.Mvc;

namespace PartialViewAjaxFormModel.Controllers
{
public class ContainerController : Controller
{
//
// GET: /Container/

public ActionResult Index()
{
return View();
}

public PartialViewResult GetTime()
{
ViewData["Time"] = DateTime.Now.ToLongTimeString();

return PartialView("_Time");
}
}
}

最佳答案

它正在被缓存。我为此使用了一个 Action 属性:

public class NoCacheAttribute : ActionFilterAttribute
{
public override void OnActionExecuted ( ActionExecutedContext context )
{
context.HttpContext.Response.Cache.SetCacheability( HttpCacheability.NoCache );
}
}


[HttpGet]
[NoCache]
public JsonResult GetSomeStuff ()
{
...
}

关于c# - MVC 3 局部 View 上的 jQuery.load() 仅调用服务器一次(不是重新绑定(bind)问题),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9831104/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com