Jquery mobile 如何清除JQuery移动列表搜索过滤器?

Jquery mobile 如何清除JQuery移动列表搜索过滤器?,jquery-mobile,Jquery Mobile,我有一个JQuery Mobile(1.0rc1)应用程序,它有一个带有搜索过滤器的列表视图。这和样品很相似 在某些情况下,我使用ajax调用动态地将其他项目加载到列表中。发生这种情况时,我希望清除搜索过滤器中输入的任何内容,否则我将得到一个部分过滤的列表 我试过像这样按下清除按钮: $('.ui-button-clear', $.mobile.activePage).click(); $("form > input", $.mobile.activePage).val(''); 然后

我有一个JQuery Mobile(1.0rc1)应用程序,它有一个带有搜索过滤器的列表视图。这和样品很相似

在某些情况下,我使用ajax调用动态地将其他项目加载到列表中。发生这种情况时,我希望清除搜索过滤器中输入的任何内容,否则我将得到一个部分过滤的列表

我试过像这样按下清除按钮:

$('.ui-button-clear', $.mobile.activePage).click();
$("form > input", $.mobile.activePage).val('');
然后像这样清理表格:

$('.ui-button-clear', $.mobile.activePage).click();
$("form > input", $.mobile.activePage).val('');

但两者都不起作用。有人能告诉我实现这一点的正确方法吗?

您应该能够用

$('input[data-type="search"]').val("");
编辑:要更新列表,您还必须触发searchfilter上的“更改”事件:

$('input[data-type="search"]').trigger("keyup");

我使用以下代码:

$("form")[0].reset();
[0]
指向DOM元素方法。
另请参见

如果您谈论的是Jquery mobile listview,那么您需要这个

$('#autocomplete li').click(function () {
                                    $('.ui-input-clear').trigger("click");
                                });
很好,也适用于bug on:当我有多个选择时,自定义过滤器弹出窗口在第一次搜索后消失,这两个命令很有帮助。