<Manufacturers>
<Manufacturer name="abc">
<flags=""/>
</Manufacturer><Manufacturer name="abcd">
<flags=""/>
</Manufacturer>
<Manufacturer name="abcde">
<flags=""/>
</Manufacturer>
<Manufacturers>
我想打印名称中包含字符串“bc”的制造商的名称
这是我迄今为止的尝试
$( "#autocomplete" ).on( "filterablebeforefilter", function ( e, data ) {
var $ul = $(this);
html = "";
$ul.html( "<li><div class='ui-loader'><span class='ui-icon ui-icon-loading'></span></div></li>" );
$ul.listview( "refresh" );
$.ajax({
type: "GET",
url: "./Sources.xml",
datatype: "xml",
error: function(jqXHR, textStatus, errorThrown) {
console.log('Error: ' + errorThrown);
},
success: function(xml.toLowerCase()) {
console.log('AJAX Request is succeded.');
$(xml).find('Manufacturer[name*="' + $(data.input).val() + '"]').each(function(){
console.log($(this).attr('name'));
});
$ul.html(html);
$ul.listview( "refresh" );
$ul.trigger( "updatelayout");
}
});
});
问题是 .find() 区分大小写。我怎样才能做同样的事情但不区分大小写
您应该匹配“制造商”,然后按制造商名称进行搜索,并且查询在函数中都转换为小写,而不是在查找中构建检查
$(xml).find("Manufacturer").each(function(i){
console.log($(this)[0].attributes.name.value.toLowerCase().indexOf(query.toLowerCase()) >= 0;
})
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)