2012-10-12 103 views
1

我知道使用$('form').submit()在提交按鈕以保留名稱「submit」命名時不起作用。JQuery:如何提交具有名稱爲「submit」的提交按鈕的表單

令人討厭的是我無法更改我想提交的表單的html。

我認爲一種解決方法是在使用$('form').submit()之前刪除輸入按鈕,但這似乎不起作用。

$('input:last').remove(); 
$('form').submit(); 

有沒有人知道這個問題的另一個解決方案?

+0

不是表格有ID或類或類似的東西? – Mathlight

+0

或嘗試'$('form [0]')。submit();'並且該數字必須對應於從正文開始計數的表格的編號 – Mathlight

+0

表格沒有id或類。但用我的代碼選擇元素確實有效。手動刪除HTML代碼中的提交按鈕是我的問題的解決方案,但是當我嘗試使用JavaScript執行此操作時,問題仍然存在。 –

回答

3

你有兩個選擇:

1.創建一個formElement並使用其.submit方法。

document.createElement('form').submit.apply($('form')[0]); 

2.使用.submit方法形成的HTMLFormElement

HTMLFormElement.prototype.submit.apply($('form')[0]); 

其原因在this answer陳述的原型。

+0

謝謝,這個作品! –

0

這是我使用過一次的示例代碼。它也應該適合你。

<form method="post" action="" id="myform"> 
<input type="text" value="kdfhdjskfsdhf" name="test" /> 
<input type="button" name="submit" value="submit" onclick="submit_this_form()" /> 
</form> 

function submit_this_form(){ 
    jQuery($('input[name="submit"]')).attr('name', 'new_submit'); 
    jQuery('#myform').submit(); 
} 
相關問題