Javascript jquery引导网格如何在隐藏列中搜索

Javascript jquery引导网格如何在隐藏列中搜索,javascript,jquery,jquery-bootgrid,Javascript,Jquery,Jquery Bootgrid,我在jQuery-BootGrid表中有两个隐藏列,我不想显示它,但我想在searcher中按这两列进行搜索。我怎么做?我试图添加数据visible=“false”data searchable=“true”data identifier=“true”,但这不起作用 Bootgrid目前的工作方式(1.3.1版),它只搜索可见列,请在此处查看它们的源代码: jquery.bootgrid.js for (var i = 0; i < that.columns.length; i++) {

我在
jQuery
-
BootGrid
表中有两个隐藏列,我不想显示它,但我想在searcher中按这两列进行搜索。我怎么做?我试图添加
数据visible=“false”data searchable=“true”data identifier=“true”
,但这不起作用

Bootgrid目前的工作方式(1.3.1版),它只搜索可见列,请在此处查看它们的源代码:

jquery.bootgrid.js

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)
    {
        return true;
    }
}
for(var i=0;i-1)
{
返回true;
}
}
在我看来这很奇怪。我认为默认情况下,他们应该使一个列在隐藏时不可搜索,但是如果开发人员显式地将其设置为可搜索,那么它应该是可搜索的(即使对于隐藏列也是如此)

解决这个问题的一个方法是将其更改为:

for (var i = 0; i < that.columns.length; i++)
{
    column = that.columns[i];
    if (column.searchable && row[column.id])
        if(column.converter.to(row[column.id]).search(searchPattern) > -1) {
        return true;
    }
}
for(var i=0;i-1){
返回true;
}
}
这将使隐藏的列被搜索。如果您有任何其他隐藏字段,您确实不想进行搜索,那么现在您必须显式地将
searchable
设置为false(通过html数据属性或jquery)

此外,如果您想使用缩小版,您应该自己缩小它,因为现有版本不会有这些更改。此外,如果您或您团队中的其他人决定再次下载库(例如为了更新或其他原因),请务必小心



作为奖励,您可能会注意到,我还插入了一个
&&row[column.id]
,以避免通过
append
方法加载
null
值时出现异常。

非常有效!