添加< %%>在页面加载时强制执行javascript函数?

时间:2013-11-11 13:59:37

标签: c# javascript asp.net

我有以下javascript功能:

        function redirect() {
        window.setTimeout(function () { <% Response.Redirect("~/Pages/ExecrcisePlan.aspx"); %> }, 2000);
    }

我想从我的asp.net页面中调用这个函数,但是当我进入页面并在没有调用函数的情况下重定向我时它正在执行,而当我评论该行同样的事情发生时,我知道我可以使用其他javascript替代但是好奇为什么它不起作用,如果有任何方式使其工作?

2 个答案:

答案 0 :(得分:4)

在aspx或cshtml页面中使用&lt; %%&gt; 块时。在页面创建时立即评估代码,因为它们是服务器端代码块。您可以使用ASP.Net AJAX Timer控件而不是使用纯javascript来调用它。

另一种替代方法是使用 javascript重定向方法,如location.href,然后使用块&lt;%Response.Write(url)%&gt;输出你想要的URL。

答案 1 :(得分:0)

您想要做的是:

redirect();

function redirect() {
  var x = setTimeout(function() {
  window.location.replace(<% Url.Content("~/Pages/ExecrcisePlan.aspx"); %>);
  }, 2000);
}

http://jsbin.com/aQaLuVA/1/