我的问题是这样的,
我正在使用过滤器功能在树中显示匹配的元素(LI),它工作正常,但它显示从传递的字符串开始的所有li元素,例如
如果我通过“应用程序”过滤功能,那么它显示我所有li,哪个文本从“应用程序”开始
function callme(filterData){ $("ul.treeview").find("li").hide(); if(filterData.indexOf("|")!=-1){ var filterData = filterData.split("|");
for(i=0;i<filterData.length;i++){
jQuery("ul.treeview").find("li").filter(function(index) { return jQuery.trim($(this).text()) == filterData.trim(); }).show(); }
}else{ jQuery("ul.treeview").find("li").filter(function(index) { return jQuery.trim($(this).text()) == filterData.trim(); }).show();
} }here is my html...
<ul id="leftNavigation" class="treeview"> <li> <ul> <li > <a href="#">Application</a><font class="leftNavHitsFont"> - (3)</font> </li> </ul> <ul> <li > <a href="#">Application Notes</a><font class="leftNavHitsFont"> - (1)</font> </li> </ul> </li> </ul>
答案 0 :(得分:1)
是的,这是包含其他内容的定义。
也许你的意思是完全匹配?
jQuery("ul.treeview").find("li").filter(function(index) {
return jQuery.trim($(this).text()) == jQuery.trim(filterData);
}).show();