当$("#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>
答案 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>