2

使用按钮 onclick 事件设置 window.location 时,结果在第二个参数名称之后被截断。

这段代码:

<button onclick="window.location='index.php?p=reports_manage&id=new'">create new report - button</button>

正在将用户发送到此页面:

https://foo.com/index.php?p=reports_manage&id=

即使我在最后添加了额外的参数,它仍然会在同一个地方被切断。

但是,所有这些都可以正常工作:

<a href="index.php?p=reports_manage&id=new">create new report - link</a>
<a href="javascript:window.location='index.php?p=reports_manage&id=new'">create new report - JS1</a>
<a href="javascript:void(0);" onclick="window.location='index.php?p=reports_manage&id=new'">create new report - JS2</a>

知道是什么原因造成的吗?据我所知,该按钮早些时候工作正常,并且在没有对此代码进行任何更改的情况下就坏了。还有什么可能会影响这一点?页面上没有 javascript 错误,无论使用什么浏览器都会发生这种错误。

4

2 回答 2

4

长镜头,但也许指定按钮类型会有所帮助。在这种情况下,类型 =“按钮”。

@William:不同的浏览器有不同的先决条件,但是作为一种保障,明确的总是好的。;)

于 2012-04-17T22:37:42.780 回答
3

使用<input type="button" />而不是<button></button>因为它有意外行为(如果用于提交表单,它甚至会提交其内容!)

于 2012-04-17T22:36:09.523 回答