在PHP程序中,我有JS函数验证提交<form ...onsubmit='return isOK();'>
。它运作正常。问题是我希望它只适用于特定的提交,而不是所有提交。在JS函数中是否有任何方法可以找出哪个提交被按下,或者某些PHP技巧
答案 0 :(得分:2)
instead of onsubmit u can use onClick.
<input type="submit" onclick="return pressSubmit1()" value="submit1" />
<input type="submit" onclick="return pressSubmit2()" value="submit2" />
答案 1 :(得分:1)
<form action="action.php" method="post">
...
<input name="submit" type="button" value="check me" onclick="submitform('check')" />
<input name="submit" type="button" value="do not check me" onclick="submitform('not check')"/>
</form>
在javascript中:
function submitform(check)
{
if(check=='check') checkfrom();
}
PHP
中的
if($_POST['submit']=="check me")
checkform();
答案 2 :(得分:0)
<form class="allowed" onsubmit='return isOK();'>
----
function isOK() {
if($(this).hasClass('allowed')) {
// Do stuff
}
}
答案 3 :(得分:0)
您的问题不明确,您使用的是单个提交按钮还是不同的按钮。如果您正在使用不同的提交按钮,那么您可以根据提交按钮的ID进行检查。另一方面,如果是单个提交按钮,那么它取决于提交或不提交的条件
答案 4 :(得分:0)
您编写一些正在使用的HTML和Java Script代码会更好。因此,很容易纠正的错误是你在代码片段中的某个地方。
答案 5 :(得分:0)
我们可以使用PHP检查单击了哪个提交按钮。 在表单提交对应的PHP页面中,写入
if(extract($ _ POST)&amp;&amp; isset($ submitbtn1)){
// some validation for first submit button
} elseif(提取($ _ POST)&amp;&amp; isset($ submitbtn2)){
// some validation for second submit button
}
注意:我们可以在提取函数中使用$后跟提交按钮名称。即。 $ submitbtn1与$ _POST相同[&#39; submitbtn1&#39;]
答案 6 :(得分:0)
是的,不同的onclick看起来很好,如接受的答案中所述。但是在事件处理程序中你应该拥有 代码如下。注意preventDefault。 此外,由于提交是提交表单的A按钮。您可以使用按钮类型而不是提交类型,然后就不需要preventDefault。以下是代码http://jsbin.com/wikose/4/
的链接 function testlogin(){
event.preventDefault();
var test = 'not validated';
if(test === "validated")
alert("not valid login");
else
$('form').submit();
return false;
}