如何自动刷新部分视图?

时间:2010-01-06 02:20:07

标签: asp.net-mvc

我有一个简单的观点:

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>

<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
    Administration
</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">   
    <h2>Indexer stats</h2>


    <div id="Stats">
        <% Html.RenderPartial("IndexerStats", CmsModels.Utilities.BackgroundIndexer.Default); %>
    </div>
</asp:Content>

如何每10秒自动刷新部分视图“IndexStats”?

我找到this code,但它不能用我的MVC版本(2 RC)编译。

1 个答案:

答案 0 :(得分:6)

该死的,你花了很多年的时间寻找答案,提出问题,然后立即找到答案。

修改后的代码是:     
        

Indexer stats

    <script src="<%=Url.Content("~/Scripts/jquery-1.3.2.min.js")%>" type="text/javascript"></script>         
    <script type="text/javascript">
        $(function() {
            setInterval(function() {
            $.get('<%=Url.Action("IndexerStats")%>', {}, function(view) {
            $("div#IndexerStats").html(view);
                })
            }, 5000);
        }); </script>    

            <div id="IndexerStats">
                <% Html.RenderPartial("IndexerStats"); %>
            </div>
</asp:Content>

然而,我愿意接受更好的想法或Html帮助。