我有一个带有两个提交按钮的表单,在代码后面我得到了每个提交的值,但问题是当我在每次提交时添加一个javascript onclick事件,当我尝试在PHP中检索值时我什么都没得到。只有在我不使用事件时才能获得输入提交值。
我没有从此代码中获取输入提交值:
<input type="submit" id="send1" value="Send1" name="sub1" onclick="validate1();"/>
<input type="submit" id="send2" value="Send2" name="sub2" onclick="return validate2();"/>
这个有效:
<input type="submit" id="send1" value="Send1" name="sub1" />
<input type="submit" id="send2" value="Send2" name="sub2" />
答案 0 :(得分:1)
这是一个快速设置,可以做你想要的 https://jsfiddle.net/d090618g/
您的HTML
<form id="theform">
<input type="submit" name="s1" />
<input type="submit" name="s2" />
<input type="hidden" name="clicked" id="clicked" />
</form>
<div id="result"></div>
快速JQuery
var $form = $("#theform");
var $clicked = $("#clicked");
$form.find( "input[type='submit']").click( function(){
$clicked.val( $(this).attr('name') );
});
$form.submit( function( e ){
e.preventDefault();
switch( $clicked.val() ){
case 's1':
alert( "Do thing 1" );
return;
case 's2':
alert( "Do thing 2" );
return;
}
//post your form to PHP here
$("#result").html( $clicked.val() );
});
答案 1 :(得分:0)
我找到了解决方案。如果无法发布禁用按钮的值,那么我只是添加一个隐藏字段,其中包含一些标识单击提交按钮的值。
<input type="hidden" id="my_post_value" name="my_post_value"/>