[英]How to auto refresh a partial view?
如何自动刷新局部视图?
public PartialViewResult Chat(string people)
{
if (User.Identity.IsAuthenticated)
{
var model = new MessageVM()
{
realReceiver = people,
messageList = db.messages.Where(x => x.sender == User.Identity.Name || x.sender == people).ToList().Take(30)
};
return PartialView("_Chat", model);
如何自动刷新此局部视图
Html.Action(“ Messages”,“ Chat”,new {people =“ give some data”})
为了快速测试,请将您对Chat
的控制器操作从POST
更改为GET
。 然后通过将地址粘贴到浏览器地址栏中进行调用。 您可以在URL的末尾包含people
参数的值:
?people=valueForPeople
检查返回的HTML,并确保这是您所期望的。 确认操作返回了所需的HTML后,您可以根据需要将其改回POST
。 然后使用下面的jQuery代码。
一种选择是在客户端设置一个计时器,该计时器将调用您的控制器,然后您可以对返回的数据进行任何所需的操作。
window.setInterval(function() {
// send get request to server
$.ajax({
url: '/Chat',
type: "POST", // or use GET
data: whateverYourArgumentsAre, // people
success: function (partialViewHtml) {
$("#divLt").html(partialViewHtml);
});
},
error: function () {
alert('Something went wrong');
}
});
}, 5000); // Every 5 seconds, 5000 ms
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.