我有一个搜索功能。如果与文本匹配,则返回li否则返回null。我需要一条消息no record found如果不匹配任何li数据
search_menu_list() {
return function (event) {
let searchText = $.trim($(this).val().toLowerCase());
if (searchText == '') {
$('.prio-app-menu-list li').show();
return;
}
$('.prio .prio-app-navigation-footer-module .prio-app-menu-list li').hide();
$('.prio .prio-app-navigation-footer-module .prio-app-menu-list li').filter(function () {
// alert($(this).find('div').data('name'));
return $(this).data('name').toLowerCase().indexOf(searchText) > -1;
}).show();
}
}
可以使用三元运算符检查值
的例子:
var dt = $(this).data('name').toLowerCase().indexOf(searchText);
var msg = dt > -1 ? dt :"No data found";
return msg;
检查长度
search_menu_list() {
return function(event) {
const $list = $('.prio .prio-app-navigation-footer-module .prio-app-menu-list li');
let searchText = this.value.trim().toLowerCase();
if (searchText == '') {
$list.show();
return;
}
$list.hide();
const $found = $list.filter(function() {
return $(this).data('name').toLowerCase().indexOf(searchText) > -1;
})
if ($found.length>0) $found.show();
else console.log('No results for',searchText)
}
}