我有 html 表,它有很多数据。然后我创建了一个选择选项来过滤表格并显示过滤后的数据。select位于route只有 3 个的列中option:Marikina、Montalban和Motalban/Marikina。
我过滤的时候可以显示数据,但问题是我选择的时候Marikina或者Montalban它也显示第三个选项,也就是Montalban/Marikina. 这是使用 select 过滤表的 jquery 代码:
$(document).ready(function () {
$('.filter').change(function () {
var values = [];
$('.filter').each(function () {
var colIdx = $(this).data('col');
$(this).find('option:selected').each(function () {
if ($(this).val() != "") values.push( {
text: $(this).text(),
colId : colIdx
});
});
});
filter('table > tbody > tr', values);
});
function filter(selector, values) {console.log(values);
$(selector).each(function () {
var sel = $(this);
var tokens = sel.text().trim().split('\n');
var toknesObj = [], i;
for(i=0;i<tokens.length;i++){
toknesObj[i] = {
text:tokens[i].trim(),
found:false
};
}
var show = false;
//console.log(toknesObj);
$.each(values, function (i, val) {
if (toknesObj[val.colId].text.search(new RegExp("\\b"+val.text+"\\b")) >= 0) {
toknesObj[val.colId].found = true;
}
});
我希望如果我只选择Marikina它只会显示Marikina不带Montalban/Marikina. 先感谢您
相关分类