2011-06-20 152 views
0

我有這樣的代碼:http://jsfiddle.net/xFvrV/2/許多提交按鈕一種形式

<form id="formTest" action="#" method="post"> 
    <input type="text" id="textTest"/><br> 
    <input id="submitButtonDraft" type="submit" value="Save Draft" /><br> 
    <input id="submitButton" type="submit" value="Save" /> 
</form> 

$(document).ready(function() { 
    $("#formTest").submit(function (e) { 
     e.preventDefault(); 
     alert('toto'); 
    }); 
}); 

如何知道哪些按鈕提交表單? http://jsfiddle.net/xFvrV/9/:而在警報()

謝謝你按下按鈕的

+0

[確定哪個元素從onsubmit中提交表單](http://stackoverflow.com/questions/541869/determine-which-element-submitted-a-form-from-within-onsubmit) –

+1

In如果你關心哪個按鈕提交了表單,那麼設計條款就是糟糕的表單設計。如果提交按鈕很重要,你應該有兩種形式。 – Raynos

回答

6

跟蹤顯示。

$(document).ready(function() { 
    $("#formTest").submit(function (e) { 
     e.preventDefault(); 
     // get data from form's data 
     alert($(this).data('submitbutton').attr('value')); 
    }); 

    $('input[type=submit]').click(function() { 
     // save as data on form's .data 
     $(this).parent().data('submitbutton', $(this)); 
    }); 
}); 
+1

我試圖在'$(「#formTest」)'上將它作爲'.data'存儲。 – Raynos

+0

@Raynos:這確實是一個更優雅的解決方案,謝謝。 – pimvdb

-4

如果他們是type=submit他們將提交表格。

所以在你的情況下,兩個的按鈕將提交表單。

+0

@downvoter,小心解釋一下? – Neal

+3

他問如何確定_programmatically_哪個按鈕被按下;他已經知道或者是候選人。 –