JQuery - 为什么不提交提交?

时间:2013-11-04 02:07:45

标签: jquery forms form-submit

$("#classList").submit();下面的行被点击时,表单没有提交,JavaScript就会继续。我错过了什么?我在页面上使用JQuery mobile(这就是为什么表单上有data-ajax="false"属性,以防止Ajax提交表单。

<script>
    $(document).ready(function () {
        $("#filter").on("click", function () {
            if ($("#filter").val() == 'DONE') {
                $("#classList").submit();
            }
            $('#filterpanel').toggle();
            $("#filter").val(function (i, text) { return text == 'FILTER' ? 'DONE' : 'FILTER';});
       });
    });
</script>
<form id="classList" runat="server" data-ajax="false">
    <div class="search_field2">
        <input id="address" type="text" name="address" class="input12" runat="server" clientidmode="Static" data-role="none" />
        <span>
            <input name="submit" type="submit" value="" class="retina-sprite" data-role="none" /></span>
    </div>
    <div class="filter_box">
        <input id="filter" name="filter" type="button" value="FILTER" class="filter" data-role="none" />
    </div>
...
</form>

1 个答案:

答案 0 :(得分:2)

这是因为你有一个名为submit的输入元素,它会覆盖表单提交方法。将提交按钮名称从提交更改为其他内容,它应该可以正常工作。

<form id="classList" runat="server" data-ajax="false">
    <div class="search_field2">
        <input id="address" type="text" name="address" class="input12" runat="server" clientidmode="Static" data-role="none" />
        <span>
            <input name="submits" type="submit" value="" class="retina-sprite" data-role="none" /></span>
    </div>
    <div class="filter_box">
        <input id="filter" name="filter" type="button" value="FILTER" class="filter" data-role="none" />
    </div>
...
</form>

演示:ProblemSolution