如何在jQuery DataTable中搜索确切的字符串?

时间:2015-10-14 10:32:22

标签: jquery datatables

enter image description here

我怎样才能过滤满意的。

香港专业教育学院尝试过这个剧本,但它无法正常工作

<script>
$(document).ready(function() {
    tbl = $('#example').dataTable();
    tbl.fnFilter("^" + filter_value + "$");
});

$(document).ready( function() {
    $('#example').dataTable( {
        "oSearch": {"bSmart": false}
    } );
} )

oTable.fnFilter( "^"+TERM+"$", COLUMN , true); //Term, Column #, RegExp Filter
oSettings.aoPreSearchCols[ iCol ].sSearch = "^\\s*"+'1'+"\\s*$";
oSettings.aoPreSearchCols[ iCol ].bRegex = false;
oSettings.aoPreSearchCols[ iCol ].bSmart= false;
</script>

1 个答案:

答案 0 :(得分:1)

  

<强>解

使用以下代码 DataTables 1.10 + 对表格中的所有列执行完全匹配:

var table = $('#example').DataTable();

$('.dataTables_filter input', table.table().container())
    .off('.DT')
    .on('keyup.DT cut.DT paste.DT input.DT search.DT', function (e) {

        // Uncomment this loop for large datasets for performance
        // to search only on ENTER key
        // if (e.keyCode == 13) {

            var term = $.trim(this.value).toLowerCase();
            if (term !== "") {
                $.fn.dataTable.ext.search.push(
                    function (settings, data, dataIndex) {
                        var isFound = false;
                        $.each(data, function (index, value) {
                            if (value.toLowerCase() === term.toLowerCase()) {
                                isFound = true;
                            }
                            return !isFound;
                        });

                        return isFound;
                    }
                );
            }

            table.draw();

            if (term !== "") {
                $.fn.dataTable.ext.search.pop();
            }

        // Uncomment this loop for large datasets for performance
        // to search only on ENTER key
        // }
});
  

<强>样本

请参阅this jsFiddle以获取代码和演示。