我正在使用jquery datatable
在应用程序中显示报告。使用数据表提供的默认搜索。搜索适用于大多数场景。但是我在搜索某些单词时遇到了问题。
计算出<td>
标记之间的内容被视为文本。因此,如果我搜索单词add
,则会显示所有行。这是因为第一列将工作add
作为类属性。 href
,get
,id
,progress
等情况也是如此。
<tr class="odd">
<td class=""><a href="#" class="add" onclick="getById(68)">68</a></td>
<td class="">friw678</td>
<td class="">windows</td>
<td class="">
<span title="Bangalore">Bangal..</span>
<p>Bangalore</p>
</td>
<td class=" sorting_1">
<span title="6/6/2014 1:02:52 PM">6/6/2014 1..</span>
<p>6/6/2014 1:02:52 PM</p>
</td>
<td class="">
<div class="progressBarBlueComplete ui-progressbar ui-widget ui-widget-content ui-corner-all" role="progressbar" aria-valuemin="0" aria-valuemax="100" aria-valuenow="100">
<div class="ui-progressbar-value ui-widget-header ui-corner-left ui-corner-right" style="display: block; width: 100%;"></div>
</div>
</td>
<td class="">
<span title="COMPLETED">COMPLE..</span>
<p>COMPLETED</p>
</td>
<td class="">sha5</td>
</tr>
有没有办法只考虑内部标签内的文字。 (而不是考虑内部标记。)因此,如果对单词href
搜索结果的搜索为空。
使用的数据表是https://datatables.net/
答案 0 :(得分:5)
是的,您可以全局或每列指定数据表的过滤行为。
如果我理解正确,从表格单元格的内容中删除html标签对你有好处。您可以在.dataTable({});
定义中执行此操作:
"aoColumnDefs": [
{ "mRender": function ( data, type, full ) {
if (type === 'filter') {
return data.replace(/(<([^>]+)>)/ig,"");
}
return data;
}
}
]