我很抱歉用如此少量的信息提出这么简单的问题,但我无法弄清楚这一点!
我有一个ASP.NET页面,我在其中添加了几个普通的HTML按钮,它们应该将用户带到不同的页面。这是一个例子:
<button onclick="location.href='Default.aspx';">Go Back</button>
我希望点击后,此按钮会将浏览器重定向到Default.aspx。相反,它似乎只是刷新当前页面,保持URL完整。
按钮位于页面范围的ASP.NET&lt; form&gt;内。标签。按钮不提交表单。当我在浏览器中查看页面的源代码时,我没有看到任何应该拦截位置更改的内容(比如onunload事件处理程序或类似的东西)。没有其他框架。这个页面根本没什么了不起的。
我尝试过使用location=
,self.location=
,window.location=
和location.replace()
。从按钮的onclick
处理程序中执行时,它们都不起作用。我在Firefox 5和Chrome 10中尝试过。从浏览器的地址栏执行时,javascript 可以正常工作:javascript: location.href='Default.aspx'; void(0);
。
我使用Firebug的javascript调试器试图跟踪单击按钮时发生的情况,我没有看到任何异常。我没有看到任何事件拦截代码或其他问题。错误控制台中没有记录错误。
在我看来,我像以前一样使用了脚本,而且它总是工作得很好。为什么现在不工作? ASP.NET创建的一些代码,我不知道? onclick
内<button>
无效吗? Chrome和Firefox共享这个JS安全性是否奇怪?
请帮助,这让我发疯!感谢。
答案 0 :(得分:9)
只需像这样添加return false;
:
<button onclick="location.href='Default.aspx';return false;">Go Back</button>
停止将表单提交给自己的按钮。
答案 1 :(得分:3)
尝试将return false
添加到onclick javascript?
答案 2 :(得分:0)
您需要使用document.location.href =“your url”;