jQuery Bootgrid搜索错误

时间:2015-08-06 15:33:15

标签: javascript jquery jquery-bootgrid

我将数据从ajax回调中追加到表中。

// ajax
...
success: function(data) {
 $("#some-table").bootgrid("append", data.rows);
},
..

除搜索外,它按预期工作。

搜索适用于单个字母,但随后会将此错误抛给其他字符,使其无法使用。

Uncaught TypeError: Cannot read property 'search' of null

它来自lib中的这个函数

function loadData()
    {
        var that = this;

        this.element._bgBusyAria(true).trigger("load" + namespace);
        showLoading.call(this);

        function containsPhrase(row)
        {
            var column,
                searchPattern = new RegExp(that.searchPhrase, (that.options.caseSensitive) ? "g" : "gi");

            for (var i = 0; i < that.columns.length; i++)
            {
                column = that.columns[i];
                if (column.searchable && column.visible &&
                    column.converter.to(row[column.id]).search(searchPattern) > -1) // this is where it breaks
                {
                    return true;
                }
            }

            return false;
        }

1 个答案:

答案 0 :(得分:0)

如果遇到此类问题,您可以在bootgrid中设置搜索属性。

例如:

searchSettings: { delay: 250, characters: 30(just increase the character) }

现在您可以搜索,但输入了关键字。它就像玩脚本记忆一样。但这是最简单的方法。