我的一个.jsp文件中有以下内容:
...
<input style = "margin-left: 100px" type="submit" name = "cancel" onclick="return confirm('Are you sure?');" value="Cancel" />
...
以上工作完美,当我点击提交时,会弹出一个窗口,其中显示相应的确认消息。另一方面,在另一个.jsp文件中,我有以下内容(与上面几乎相同):
...
<input style = "margin-left: 100px" type="submit" name = "confirm" onclick="return confirm('Proceed to results?');" value="Confirm" />
...
在这种情况下,提示窗口根本不显示,当我按下提交时,它会加载下一页而不要求确认。第二个例子不能按预期工作的区别是什么?
答案 0 :(得分:2)
这是因为您输入的name
为confirm
。 Chrome等浏览器会将命名表单元素放在全局范围内(window
)。由于您的元素名为confirm
,因此它会覆盖window.confirm
函数作为您的元素。
只需将您的输入命名为其他内容
<input type="submit" name="myconfirm" onclick="return confirm('Proceed to results?');" value="Confirm" />