2011-05-25 147 views
1

當用戶使用jQuery單擊選項時,我將如何提交表單?我發現使用datepicker文本輸入一個類似的問題,但我不熟悉jQuery,所以我似乎無法將其轉換爲選擇項目的工作。提交表單選擇option.onClick

+1

您是否有示例表單?然後,我們可以爲您提供確切的jQuery – 2011-05-25 21:48:38

回答

8

<option>click

$('option').click(function() 
{ 
    $(this).closest('form').submit(); 
}); 

在一個<select>change(這可能是你想要的):

$('select').change(function() 
{ 
    $(this).closest('form').submit(); 
}); 

由於@Guffa評論:

選項上的click事件不適用於所有瀏覽器。 Safari例如不觸發它。

...所以你絕對想要第二個。

+3

Upvoted,但建議在用戶通過鍵盤選擇選項時再次檢查點擊事件是否觸發。您可能需要在選項上使用更改事件,而不是選項上的單擊事件。 – RwwL 2011-05-25 21:49:39

+0

@RwL:你必須讓_just_錯過我的編輯。 – 2011-05-25 21:53:10

+0

選項上的「click」事件在所有瀏覽器中都不起作用。 Safari例如不觸發它。 – Guffa 2011-05-25 21:55:50

0
$('#option').click(function() { 
    // form validation and such then 

    $('form').submit(); 
}) 

這是我能想到的

更新最簡單的方法:

的具體形式,可以使用其名稱或ID,它真的取決於你的HTML看起來像

$('form[name="formnamehere"]').submit(); 
+0

如果頁面上有多個表單,該怎麼辦? – 2011-05-25 21:52:16

+0

看到我編輯的具體形式 – Ibu 2011-05-25 22:00:57

+0

...或者你可以看到[@ Guffa's answer](http://stackoverflow.com/questions/6131346/jquery-submit-form-for-select-option-onclick/6131408#6131408 )或[我的回答](http:// stackoverflow。COM /問題/ 6131346/jQuery的提交形式換選擇選項-的onclick/6131386#6131386)。 – 2011-05-25 22:02:40

0
$('select').change(function() { 
    $('form').submit(); 
}); 
+0

如果頁面上有多個表單會怎麼樣? – 2011-05-25 21:49:42

+0

沒有HTML,很難給出一個確切的腳本。 – PeeHaa 2011-05-25 21:50:21

3

關於選項的click事件不適用於所有瀏覽器。使用select元素的change事件。

例子:

$('select').change(function(){ 
    this.form.submit(); 
}); 

注意,當你調用submit方法來發布表單形式的submit事件不會被觸發。

1

這些答案的小修正:

$(document).ready(function() { 
    $('#some_link').click(function() { 
     $('#form_id').submit(); 
    }); 
});