ASP.NET页面加载和javascript设置超时

时间:2014-09-30 17:05:20

标签: javascript asp.net-mvc asynchronous settimeout

我有一个使用setTimeout的javascript函数。我的问题是我有一个ASP.NET页面,其代码在函数完成之前在页面加载时执行。有没有办法暂停页面加载或仅在计时器完成后调用页面加载。 setTimeout文件位于单独的JS文件中,不属于asp.net页面。

setTimeout(function () { myFunc(); }, 1000);

我知道在MVC中你不必处理这个问题。

2 个答案:

答案 0 :(得分:0)

暂停Page_Load在Page_Load中使用System.Threading.Thread.Sleep(1000);

除非你知道如何使用多个线程,否则我不会这样做。我会禁用此处找到的所有页面控件:How do I disable all controls in ASP.NET page?然后在您希望时重新启用。

据说Javascript无法在Page_load之前运行。您可以在Javascript中执行的大多数操作都可以在asp.net中复制。但是你没有可见的代码,所以我无法真正假设。

答案 1 :(得分:0)

我假设您指的是客户端asp.net ajax pageLoad()方法(而不是服务器端的Page_Load方法)。 MS ajax在任何回发或部分页面回发之后查找并调用此方法。

由于pageLoad()在任何回发或部分页面回发后触发,因此无法延迟。我相信你想做的是在你的" myFunc()"中移动你的页面回发或部分页面回发电话。方法,但你需要发布一个更全面的例子来说明你要做的事情。