所以我尝试使用filterCallBack编写自定义搜索功能listview dom。 listview dom是ul
,自动填充li
HTML
<div data-role="page" id="home">
<div data-role="header">
<h1>Header</h1>
</div>
<div data-role="content" id="client_list_div">
<ul data-role="listview" data-autodividers="true" data-filter="true" id="client_list" data-filter-placeholder="Search" >
<li data-filtertext="Appleseed John 456789 234232 kes@kana.ca"><a href="#">John Appleseed</a></li>
<li data-filtertext="Another Name 09876 654322 q@u.ca"><a href="#">Another Name</a></li>
</ul>
</div>
</div>
的JavaScript / jQuery的
使用jQuery使用ajax调用填充li元素。我试图覆盖默认搜索功能。我还没有为我的搜索功能提供逻辑。只是尝试首先触发自定义搜索功能。我试过以下无济于事:
$('#client_list').listview('option', 'filterCallback', customSearch);
这是来自教程(http://www.peachpit.com/articles/article.aspx?p=1929169&seqNum=2)
$('div#client_list_div').on('mobileinit', function(event){
$('#client_list').listview('option', 'filterCallback', customSearch);
})
这是来自jQuery文档(http://demos.jquerymobile.com/1.4.0/filterable/#ui-page-top)
$.mobile.document.one( "filterablecreate", "#client_list", function() {
$( "#client_list" ).filterable( "option", "filterCallback", customSearch
});
这是搜索功能:(现在没有逻辑关闭,但我在每次调用时都会在功能中发出警报)
function customSearch(text, searchString)
{
return !((text.toLowerCase().indexOf( 'adfs' ) != -1) && (searchString == 'adfs'));
alert("match function called!");
}
教程看起来很简单,但无法弄清楚为什么我无法让它工作?
我正在使用jQuery 1.11.1和jQuery Mobile 1.4.5