繁体   English   中英

如何将javascript:location.replace与response.redirect结合使用

[英]How to use javascript:location.replace with response.redirect

当将javascript:location.replace与Hyperlink.NavigateUrl结合使用时,它可以完美运行。

例如,这很好用:

HyperLinks.NavigateUrl = "javascript:location.replace('step3.aspx?Time=" + i + "');";

这根本不起作用:

Response.Redirect("javascript:location.replace('step3.aspx?Time=" + i + "'); return false;");

它似乎只是发回自己或什么也不做。

我应该使用什么正确的语法,或者有替代方法吗?

您最有可能要使用Response.Redirect方法。 您的示例的可能语法为:

Response.Redirect(String.Format("step3.aspx?Time={0}", i), false);

Redirect方法的第一个参数是绝对或相对URL。

但是,Redirect方法会将条目添加到浏览器的历史记录中,而您原来的JavaScript location.replace()方法则不会。 如果很重要,一种解决方法是使用Server.Transfer方法:

Server.Transfer(string.Format("step3.aspx?Time={0}", i));

但是在这种情况下,浏览器显示的URL不会更改为“ step3.aspx”。 您必须决定哪个对您来说是更好的选择。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM