使用 MVC 2 我想每 10 秒触发一次操作
我有一个名为 DataProgress 的视图,当它显示在我的浏览器中时,我希望它每 10 秒重新触发一次生成它的相同操作。我的操作是控制器 MyController 中的 DataProgress。
我尝试了以下方法,但似乎每隔几秒(而不是 10 秒)就会触发该方法,并且在浏览器中我根本看不到任何显示。
<script>
$(document).everyTime(10000, function () {
<% Html.Action("DataProgress");%>;
}, 100);
</script>
京东
I have a view called DataProgress and when it is shown in my browser, I want it to re-fire the same action that produced it every 10 seconds. My action is DataProgress in the controller MyController.
I tried the following, but it seems to fire the method ever few seconds (not 10 seconds) and in the browser I do not see anything shown at all.
<script>
$(document).everyTime(10000, function () {
<% Html.Action("DataProgress");%>;
}, 100);
</script>
JD
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
<% Html.Action("DataProgress");%>除了在执行视图时渲染一次操作并将结果插入到放置操作命令的位置之外,什么也不做。
换句话说:Html.Action是一个服务器端命令,它不能被javascript代码调用。
您需要做的是使用 $.ajax() 或类似的 jQuery 方法(加载和getJson 也可能根据您的需要工作)并相应地更新您的页面。
<% Html.Action("DataProgress");%> does nothing but to render the action ONCE when the view is executed and to insert the result into the place where you placed the Action command.
In other words: Html.Action is a server-side command, it cannot be called by javascript code.
What you need to do is to use $.ajax() or similar jQuery methods (load and getJson might also work depending on your needs) and update your page accordingly.