[英]How to filter search results based on multiple data attributes
我正在嘗試根據內聯數據屬性搜索多個數據結果。 但是,我只能弄清楚如何搜索單個數據屬性而不是全部。 我怎么做到這一點?
我有什么: http : //jsfiddle.net/9SMZC/2/
$("input[type=text]").keyup(function () {
var filter = $(this).val();
$("a").each(function () {
if ($(this).attr("data-event-name").search(new RegExp(filter, "i")) < 0) {
$(this).hide();
} else {
$(this).show();
matches++;
}
});
});
提前致謝!
如果要應用“或”邏輯,可以這樣做:
$("input[type=text]").keyup(function () {
var filter = $(this).val();
$("a").each(function () {
var data = $(this).data();
$(this).hide();
for (var key in data) {
if (~data[key].search(new RegExp(filter, "i"))) {
$(this).show();
break;
}
}
});
});
演示 (嘗試搜索“andrew”例如)
我們的想法是獲取data
對象並迭代屬性。 為了簡化代碼(即避免保留布爾值),我也總是隱藏並顯示元素何時正常。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.