我想突出显示在收件箱中输入的文字,当它在表格列中找到td时,它应该突出显示它,否则从中移除突出显示。
以下是我的代码的小提琴:http://jsfiddle.net/rFGWZ/6/,尝试在文字输入中输入21
,因此只有2行可见,我想选择21
in在案例中可见的每个td
,这是在输入中输入的文本。
我已尝试在网络上发布了许多高亮显示的脚本,但它们似乎都没有用,因为我无法真正本地化该元素,因为这是实时查询搜索......
答案 0 :(得分:2)
您必须创建仅包含突出显示字符的范围。 我建议你这个代码:
$("table tr").each(function(index) { if (index !== 0) { $row = $(this); var firstCell = $row.children("td:first"); var id = $row.children("td:first").text(); if (id.indexOf(value) !== 0) { $row.children("td:first").text(id); $row.hide(); } else { firstCell.html($("").addClass("highlight").text(id.slice(0, value.length))); firstCell.append(id.slice(value.length, id.length)); $row.show(); } } });
不要忘记在CSS中自定义.highlight
规则。
请参阅it live!
答案 1 :(得分:0)
喜欢这个.. ??
if (id.indexOf(value) !== 0) {
$row.hide();
}
else {
$row.show();
$row.css("color","red");
}