我的.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" />
...


在这种情况下,提示窗口根本不会出现,当我按提交时,它会加载下一页而不要求确认。使第二个示例无法按预期工作的区别是什么?

最佳答案

发生这种情况是因为您输入的nameconfirm。某些浏览器(例如Chrome)会将命名表单元素放在全局范围(window)上。并且由于您的元素名为confirm,因此它将覆盖window.confirm函数作为您的元素。

只需将您的输入命名为其他名称

<input type="submit" name="myconfirm" onclick="return confirm('Proceed to results?');" value="Confirm" />

关于javascript - onclick确认未提示,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40835489/

10-12 04:51