1

我正在使用启用了工具栏搜索的 jqGrid。我已将搜索选项配置为'eq'. 但是,当我在搜索栏上输入十进制数字时,不会显示有效记录。

例如:当我输入12时,记录12.00显示,这是正确的。当我输入不显示12.50的记录时,这是不正确的。12.50

我尝试了sorttype数字,formatter小数位,但我似乎无法让它工作。

网格定义:

$("#productListingGrid").jqGrid({
    datastr: products,
    datatype: 'jsonstring',
    jsonReader: {
        root: 'products',
        repeatitems: false,
        cell: 'products.branches',
        id: 'productNumber'
    },
    loadonce: true,
    // -1 no longer works: https://github.com/tonytomov/jqGrid/issues/317
    rowNum: 10000,
    height: 580,
    width: 1250,
    colNames: columnNames,
    colModel: columnModel,
    sortname: 'productNumber',
    sortorder: "asc",
    caption: 'PRODUCT LIST',
    headertitles: true,
    altRows: true,
    altclass: 'gridStripe',
    gridview: true,
    footerrow: true,
    ignoreCase: true,
    shrinkToFit: false
});

我的列模型定义:

{ name: 'totalValue' , width:55, align:'right', formatter: 'currency', searchoptions:{sopt:['eq']} }

启用工具栏搜索的代码:

grid.jqGrid('filterToolbar', {searchOnEnter: false});

我可以知道这是否是当前的限制吗?

非常感谢。

注意:我目前正在使用以下内容:

jQuery - 1.9.1
jQuery UI - 1.10.2
jqGrid - 4.4.5
4

1 回答 1

2

我通过将sorttype值设置为'float'.

{ name: 'totalValue' , width:55, align:'right', formatter: 'currency', searchoptions:{sopt:['eq']} }

{ name: 'totalValue' , width:55, align:'right', sorttype:'float', formatter: 'currency', searchoptions:{sopt:['eq']} }

我发现设置排序类型以使搜索正常工作是非常违反直觉的。改用数据类型可能会更好。

于 2013-04-16T00:01:08.123 回答