尽管使用了Onsubmit确认,HTML表单仍然设置PHP$_POST[]
HTML form still sets PHP $_POST[] despite using Onsubmit confirmation
在HTML-中
<form id="anID" method="post" onsubmit="confirm('Want to make this change?')" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>
<input type="text" name="amount">
<input type="submit" name="add" value="Add Amount">
</form>
在PHP-中
if (isset($_POST['add'])) { Add amount to database }
我的问题是,尽管onsubmit
对话框出现时按了"取消",POST表单仍然设置好,PHP
If()
语句中的所有代码仍然提交,但我不希望这样。
有没有办法在激活isset()
之前确认提交?
最好是一个简单的解决方案,不需要单独的JS函数。
您需要return
来自confirm()
的响应以阻止表单提交(如果它返回false
。返回true
将允许表单提交):
onsubmit="return confirm('Want to make this change?')"
首先,您还没有关闭表单语句。
最重要的是,您必须设置从对话框到表单的返回。这是正确的行:
<form id="anID" method="post" onsubmit="return confirm('Want to make this change?')" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
相关文章:
- CORS:否'访问控制允许来源'header-但是php设置头文件
- 通过JavaScript设置cookie与通过PHP设置cookie
- 使用 PHP 设置的 cookie 在 js 重定向和新的 PHP 脚本使用 isset 检查后不可用
- 使用 PHP 设置一个 Javascript 变量
- PHP 设置默认值以从 ajax 页面返回记录
- 是否可以阻止使用 Javascript 或 PHP 设置 cookie
- jQuery.data():从php设置值
- 为什么我不能通过javascript或php设置跨子域cookie
- 使用PHP设置焦点并在出现错误时选择内容元素
- 从PHP设置JavaScript变量
- 为什么我用PHP设置的cookie不能用Javascript读取
- 使用php设置图像上传器字段
- 我应该使用Javascript或PHP设置一个全局变量来唯一标识web应用程序中的每个页面吗
- 不能使用angular.js和php设置下拉列表中的值
- JqGrid如何使用JqGrid JS与PHP设置属性
- 使用PHP设置和编码cookie
- 通过ajax调用php设置cookie
- Javascript不允许我用PHP设置变量
- 我如何重置一个复选框的复选值是由php设置的
- PHP设置下拉列表默认值