使用jquery自动提交表单

时间:2010-10-16 14:11:56

标签: jquery

我有以下表格。形式有效。 现在我想在选择其中一个选项时自动提交表单。

<div id='weeksubmit'><!-- I don't need this div -->
<form action="http://localhost/myapplication/index.php/courses/admin/index" method="post" class="autosubmit">
<label for='weekid'>Select Week</label>
<select name="weekid">
<option value="1">Uke 40 (04/10 - 10/10)</option>
<option value="2" selected="selected">Uke 41 (11/10 - 17/10)</option>
<option value="3">Uke 42 (18/10 - 24/10)</option>
<option value="4">Uke 43 (25/10 - 31/10)</option>
</select>
<input type="submit" name="submit" value="Change Week"  /></form>
</div>

我尝试了以下代码,但它不起作用。

有谁能告诉我我做错了什么?

提前致谢。

$(".autosubmit select").change(function() {
   $(this).submit();

});

3 个答案:

答案 0 :(得分:7)

您的.change()功能已正确放置在select元素上,但这意味着$(this)select元素相同。您无法提交下拉框。怎么样:

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

答案 1 :(得分:4)

您正在提交select而不是表单:

$(".autosubmit select").change(function() {
   $(".autosubmit").submit();
});

答案 2 :(得分:1)

略微改编了Votey对使用数据属性和实时观看的回答:

$("form[data-autosubmit] select").live('change', function() {
    $(this).closest('form').submit();
});

你应该给他正确答案。