使用jQuery事件处理程序 - jQuery新手

时间:2014-06-01 20:27:29

标签: javascript jquery

我正在学习jQuery并且觉得我必须遗漏一些东西。我有一个超级简单的表格设置如下:

<form name="testform" id="testform" method="post">
    <select type="select" id="searchid">
        <option value="1">Option 1</option>
        <option value="2">Option 2</option>
    </select>
    <input type="text" id="searchtext" value="$_POST['value']">
</form>

我想在更改#searchid时使用jQuery自动提交表单。我理解如何使用基本的JavaScript做到这一点,但我需要jQuery用于其他事情,并需要了解这些东西是如何工作的。下面的jQuery片段在我看来应该可以工作,但它不起作用。有什么想法吗?

$( "#searchid" ).change( function() {
    $( "#testform" ).submit();
})

1 个答案:

答案 0 :(得分:2)

您可以通过以下方式提交表单:

$(function() {
    $( "#searchid" ).change( function() {
        $( "#testform" )[0].submit();
        //or this.form.submit();
    });
});

确实很接近。为确保您的服务器端能够获得正确的数据,您的输入应具有名称

修改

代码已更新,包括DOM ready。很容易假设DOM就绪是如此基础,而且可能不是问题。但是,做出任何假设绝不是安全的。

请注意,在js小提琴上创建演示时,如果jQuery版本选择器下的下拉列表显示'onLoad'或'onDomReady',则可能不需要使用DOM准备......因为你的代码无论如何都会被js fiddle包装在适当的事件处理程序中。