2013-03-13 50 views
0

嗨,我得到無按鈕的形式提交,誰的工作非常良好,沒有踢反彈球,並以郵寄方式發送名爲「fonction」變量:jQuery的:踢反彈球插件 - 表單提交的onchange

<form name="recherche_cat" method="post" class="ass_select"> 
<select name="fonction" onchange='submit()' tabindex="3" size="1"> 
    <option value="default">default</option> 
    <option value="1">mot1</option> 
    <option value="2">mot2</option> 
</select> 
</form> 

但是當我用踢反彈球,它不再工作。 我試試這個:

$('.ass_select').dropkick({ 
    change: function (value, label) { 
    $(this).closest('form').submit(); 
    } 
}); 

頁面重載,但沒有張貼價值。

感謝您的幫助。

+1

你的代碼似乎什麼版本的jQuery您使用的是做工精細http://jsfiddle.net/ult_combo/kx2VT/1/? – 2013-03-13 11:38:41

回答

0

您的onchange='submit()'不再觸發,因爲jQuery不保證在沒有jQuery的情況下附加處理程序。

相反,假設你有一個submit函數聲明,使用:

$('.ass_select').dropkick({ 
    change: submit 
}); 

Fiddle

注意,處理程序中,this指向form而不是select元素現在。

+0

嗨,謝謝你的回答,但我不知道在submit函數裏面聲明什麼,以獲得與我的onchange ='submit()'相同的效果。如何告訴jquery我想用我的var值重新加載頁面? – casp 2013-03-13 16:42:22

+0

你可以編輯這個問題來添加'submit'函數的代碼嗎?我不確定你的意思是「用var值重新加載頁面」。 – 2013-03-13 16:44:16

+0

那麼問題是我沒有得到任何函數提交:)當我使用POST方法使用提交按鈕時,我希望某人執行的操作與表單相同。 – casp 2013-03-13 16:47:39

0

我發現我的問題。 我不應該在窗體上添加dropkick類(在我的示例class =「ass_select」上),而是在select上。 像這樣的提交是好的。

0

你可以這樣做:

$('.ass_select').dropkick({ 
    change: function (value, label) { 
     $(this.form).submit();//changed here 
    } 
});