【发布时间】:2014-09-30 17:05:20
【问题描述】:
我有一个使用setTimeout 的javascript 函数。我的问题是我有一个 ASP.NET 页面,其中包含在功能完成之前在页面加载时执行的代码。有没有办法暂停页面加载或仅在计时器完成后才调用页面加载。 setTimeout 文件位于一个单独的 JS 文件中,而不是 asp.net 页面的一部分。
setTimeout(function () { myFunc(); }, 1000);
我知道在 MVC 中你不必处理这个。
【问题讨论】:
-
Page_Load在客户端呈现任何内容之前在服务器端执行。您不能设置客户端等待状态来延迟创建客户端等待状态的服务器端代码。 (而在 MVC 中,您肯定必须处理客户端代码和服务器端代码的分离。) -
除非我对页面生命周期有误解...后面代码中的 Page_Load 将总是在文档中的 setTimeout javascript 函数准备好之前完成
-
您可以通过使用 2 个 ASP.NET 页面来完成 setTimeout 功能。第一页使用 setTimeout 然后重定向到第二页。或者使用 AJAX 而不是第二页。
-
加载时执行的代码在哪里?是在 .cs 文件中,还是在另一个 javascript 文件中?
-
它不像 ASP.NET 生成页面的一部分,将其发送到客户端,然后生成另一部分....它生成整个页面并发送到客户端,此时客户端的 javascript运行页面已经加载..
标签: javascript asp.net-mvc asynchronous settimeout