HTML仕様では、フォーム内のボタンをクリックすると値が渡され、「クリックされていない」ボタンは渡されないと記載されていると思いました。チェックボックスのように...私は常にボタンの値をチェックし、送信に使用されたボタンに応じて異なる処理を行うことがあります..
AJAX (具体的には jquery) を使用してフォーム データを送信し始めましたが、ボタン データは決して渡されません。不足しているものはありますか? そのデータを渡すためにできることはありますか?
簡単なコードは次のようになります
<form id="frmPost" method="post" action="page.php" class="bbForm" >
<input type="text" name="heading" id="heading" />
<input type="submit" name="btnA" value="Process It!" />
<input type="submit" name="btnB" value="Re-rout it somewhere Else!" />
</form>
<script>
$( function() { //once the doc has loaded
//handle the forms
$( '.bbForm' ).live( 'submit', function() { // catch the form's submit event
$.ajax({ // create an AJAX call...
data: $( this ).serialize(), // get the form data
type: $( this ).attr( 'method' ), // GET or POST
url: $( this ).attr( 'action' ), // the file to call
success: function( response ) { // on success..
$('#ui-tabs-1').html( response );
}
});
return false; // cancel original event to prevent form submitting
});
});
</script>
処理中のページ - 「見出し」フィールドのみが表示され、どちらをクリックしても btnA または btnB は表示されません...
「修正」できない場合、Ajax呼び出しが「標準」フォームの動作に従わない理由を誰かが説明できますか?
どうも