刷新部分页面目前遇到的主要有两种方式:使用partialView、使用脚本(把数据用脚本写成网页表达形式)
1、使用partialView
此方法在我的博客里面有介绍过,参见
MVC通过PartialView部分加载刷新页面
2、 使用脚本
$("input[class='btn']").click(function () {
$.ajax({
url: "TaskBoardDetail",
type: "Post",
data: { "value": $(this).text() },
success: function (data) {
$.each(data, function (i, item) {
strHtml += "<li id=\"AjaxButton\"><h1><i class=\"fa fa-user\"></i>客户:" + item.Name + "<br /></h1><h2>";
if (item.DealNum != 0)
{
strHtml += "<span>" + item.DealNum + "</span>";
}
if (item.DoingNum != 0)
{
strHtml += "<span class=\"state-1\">" + item.DoingNum + "</span>";
}
strHtml+="</h2></li>";
});
}
$("#Selector").html(strHtml);
//此处重新绑定跟上述脚本设计的事件
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert("加载失败:" + errorThrown);
}
});
});
其中,Selector是我页面上安置刷新内容的一个div,即<div class="tasks" id="Selector"></div>
另外注释部分://此处重新绑定上述脚本涉及的事件,非常重要。
如果你刷新后的这部分内容还有事件,比如点击列表什么的,尽管你之前已经有过事件脚本,重新刷新这部分页面后,页面是刷新了,但是事件是没有反应的。需要在上述位置重新绑定事件。也可以理解为把事件在上述位置重新写一遍(事件比较分散的话)。