我在提交表单和
Javascript确认时遇到问题.基本上,按下“提交”按钮时会调用以下Javascript.
function confirmation() { var answer = confirm("Are you sure you wish to edit?") if (answer) { window.location = "#editform2"; } }
但是,当我点击取消而不是ok时,Javascript正确执行,因为我看地址栏并且它没有更新到#editform2.但是,表格仍然提交.它似乎刷新了页面.以下是表单中的相关部分:
//Form is encoded in PHP <form method=\"post\"> //Form is in here <input type=\"submit\" value=\"Edit\" onclick=\"confirmation()\">
所以表单不知道它在哪里,它只是刷新页面,而页面恰好也是处理器.所以即使我点击取消它也正在处理,Javascript应该保持在同一页面上.除了将处理移到另一页面外,我的解决方案是什么?
解决方法
它的工作原理是这样的,因为它是一个sumbit按钮,表格在每种情况下都会提交.为表单分配一个id并更改输入类型:
<form method="post" id="formid"> <input type="button" value="Edit" onclick="confirmation()">
并在点击时调用此函数:
function confirmation() { var answer = confirm("Are you sure you wish to edit?") if (answer) { document.getElementById("formid").submit(); } }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。