Att*_*ila 2 javascript c# ajax jquery asp.net-mvc-3
我正在使用asp.net MVC3作为一个网站,在视图中使用foreach显示查询结果(在控制器中管理).
我现在要做的是每次都自动刷新查询的输出,而不刷新页面.
我怎么能用ajax做到这一点?
这是视图的代码:
@{
string firstTime = "";
}
@foreach( var database in Model)
{
if (!(firstTime == database.DB))
{
<h3> @database.DB </h3>
}
<div class="logContainer" onclick="location.href='/logs/Details?databaseID=@database.DB&exceptionName=@database.Exception&exceptionsOccurred=@database.Count';">
<div class="counter"><b>@database.Count</b></div>
<div class="exceptionName"> Exceptions of Type: @database.Exception</div>
<div class="date">Siste: @database.LastOccurred</div>
</div>
<hr />
firstTime = database.DB;
}
Run Code Online (Sandbox Code Playgroud)
您可以使用window.setInterval javascript方法定期向服务器发送AJAX请求并刷新DOM的相应部分.例如,如果您想每10秒刷新一次内容:
window.setInterval(function() {
$.post('@Url.Action("someaction", "somecontroller")', function(result) {
$('#results').html(result);
});
}, 10 * 1000);
Run Code Online (Sandbox Code Playgroud)
这将向控制器操作发送一个AJAX请求,而该操作又可以返回包含更新结果的部分视图:
pubilc ActionResult SomeAction()
{
SomeViewModel model = ...
return PartialView(model);
}
Run Code Online (Sandbox Code Playgroud)
然后将该局部视图的结果注入到一些DOM元素中id="results".
| 归档时间: |
|
| 查看次数: |
5285 次 |
| 最近记录: |