数据表fnfilter搜索问题

时间:2013-09-23 17:48:06

标签: javascript jquery datatables

我有一个列udner callerID,该列下有两行 “MADOX EID”< + 14791395555> 14797195555

当我使用555或147的输入搜索时,第二行显示两个单独的行,尽管第一行也应该显示。

$('#table_id')。dataTable()。fnFilter(searchpattern,dropdownindex + 1,false,true,true,true);

这是我的fnfilter搜索,表单中的输入是searchpattern,选择要搜索的列是dropdownindex,所有这些都可以正常工作。它的搜索破碎了。我需要它作为一个包含搜索。因为在两行中都包含555和147,但只有第二行显示。

    $('#csearchtext').bind("change paste keyup", function () {

    var input = $('#csearchtext').val();
    var dropdownindex = $("select[name='columnlist'] option:selected").index();
    var radioselected = $("input:radio[name='group2']:checked").val();
    var searchpattern = '';

    switch (radioselected) {
        case '1':
            searchpattern = '^' + input;
             $('#table_id').dataTable().fnFilter(searchpattern, dropdownindex + 1, true, false, true, true);
            break;
        case '2':
            searchpattern = input;
             $('#table_id').dataTable().fnFilter(searchpattern, dropdownindex + 1, false, true, true, true);
            break;
        case '3':
            searchpattern = input + '$';
             $('#table_id').dataTable().fnFilter(searchpattern, dropdownindex + 1, true, false, true, true);
            break;
    }
    console.log(searchpattern);
});

任何建议? 如果我搜索EID,它会将第一行拉得很好,但它就像字母和数字一样有问题。更糟糕的是,搜索在chrome中运行良好,但在firefox或ie中没有。我在chrome中获得了两个记录。

1 个答案:

答案 0 :(得分:0)

问题是aocolumn中的数据要么是对数字进行过滤,要么是对字符串进行过滤,所以在该列上创建一个stype:string使它始终看到一个字符串。