将asp.net计时器触发更新面板转换为MVC

时间:2010-06-17 15:05:06

标签: asp.net-mvc

我正在将我的asp.net应用转换为asp.net mvc。我正在使用包含当前呈现局部视图的div的母版页。此部分视图显示我想要显示的模型数据。

我为最后保存了“最佳”,那就是将asp.net计时器触发的更新面板转换为MVC。我是一个asp.net MVC新手。有什么建议?我在这个论坛中看到了一个使用表单和提交按钮的示例。如何添加计时器?我只是在我的控制器中设置一个计时器,每次火灾都会返回我的局部视图吗?我甚至需要表格吗?感谢

1 个答案:

答案 0 :(得分:9)

AJAX requests触发regular intervals到返回部分视图的控制器操作应该足够了:

public ActionResult SomePartial()
{
    // return PartialView.ascx partial view containing an HTML fragment
    return PartialView();
}

在你的javascript中:

$(function() {
    // trigger an ajax request to the controller action every 5s
    // and inject the returned HTML fragment into a div with id="result"
    window.setInterval(function() {
        $('#result').load('/home/somepartial');
    }, 5000);
});

应在标记中使用div更新id="result"代码:

<div id="result"></div>