我一直在尝试用 PHP 解决一个恼人的行为(我认为..)。也许你们中的一些人也遇到过同样的情况并有一些想法。我有一个 html 表单,并且使用一个带有 onClick 事件的元素来调用 javascript 函数。处理脚本的内容后,我执行 form.submit() 指令。它基本上检查常见的事情,例如字段的长度等。
现在我的问题是,当我使用输入类型按钮时,我将其名称设置为submit1,并且只是为了运行一个小测试,我将<form id="register" action="<?php echo($PHP_SELF) ?>" method="post">
然后我把:
<?php
if (isset($_POST["submit1"])) {
echo "Submit button was pressed";
die();
}
?>
但是,即使我的输入按钮的名称是“submit1”,我也从未看到该消息。然后,我将输入类型更改为提交,然后单击“提交”,我将看到该消息,但唯一的问题是,即使我的 javascript 函数在表单中发现任何错误,在单击警报框上的“确定”后,表单仍将继续。它仅在提交类型=提交时执行此操作。
如果有人有兴趣,
我的按钮:
第一次尝试:
<input type="button" name="submit1" class="submit" value="Register"
onclick="validateFields()" />
2nd try:
<input type="submit" name="submit1" class="submit" value="Create Account!"
onclick="validateFields()" />
For the java script
问题可能是你还没有放return false
这就是表单以任何方式提交的原因。
if(a.value == ""){
alert("Name is empty");
return false; // this will prevent your form to be submit if condition fails
}
而之间的区别button
and submit
那是submit
正在提交表格(posting form
) so PHP
有资格通过$_POST
but in button
如果表单未提交,因此您无法获取其他页面上的值,而不是使用Ajax
.
类似的问题在这里 https://stackoverflow.com/questions/290215/difference-between-input-type-button-and-input-type-submit
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)