asp.net mvc和jquery我的控制器只调用一次

时间:2011-12-26 23:25:59

标签: jquery asp.net-mvc

我正在尝试一些JQuery和计时。我使用下面的代码仅用于测试目的。我的问题是我的控制器只是第一次被调用。不会对该方法进行后续调用。我试图在我的javascript中发出“警报”,它每10秒触发一次,但我的控制器从未被调用,因此“.page”中的文本永远不会改变。关于这是为什么的任何想法?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>
        <asp:ContentPlaceHolder ID="TitleContent" runat="server" />
    </title>
    <link href="../../Content/Site.css" rel="stylesheet" type="text/css" />
    <script type="text/javascript" src="../../Scripts/jquery-1.4.1.min.js"></script>
</head>
<body>
<script type="text/javascript">
    $(document).ready(function () {
        window.setInterval(Update, 10000);

    });

    function Update() {
        var url = "/Home/GetTime";
        $.get(url, function (data) {
            $(".page").html(data);
        });
    }
    </script>
    <div class="page">

    </div>
</body>
</html>

我的控制器中的方法应该调用:

public string GetTime()
        {
            return "<h1>"+DateTime.Now.ToString()+"</h1>";
        }

1 个答案:

答案 0 :(得分:9)

如果您使用的是Internet Explorer,我的猜测就是缓存。您可以尝试使用$.ajax方法设置cache: false,并确保在其他浏览器中试用。

关于听起来像是同样的行为,还有很多discussion here