0

要求通过按钮单击而不是默认的自动完成来进行 SlickGrid 过滤,所以我修改了 updateFilter() 方法('#display' 是按钮 ID):

$('#display').click(function() {
    updateFilter();
});

     function updateFilter() {
        theString = $('#txtSearch').val();
        while(theString.substring(0,1)==" ")
             theString = theString.substring(1, theString.length);
        searchString = new String(theString);
            dataView.setFilterArgs({
                searchString:searchString,
            });
            dataView.refresh();
      }

很简单...我只是在单击按钮时获取文本框中的值,然后确保它是一个字符串并将其传递给“searchString”进行处理。您会注意到,我还必须修剪前导空格,否则过滤器将始终无法第一次通过。例如,Firebug 跟踪将显示“57”,而不是实际的“57”。这将导致返回清除网格(我假设因为它无法匹配前导空格)。要求还需要一个“清除过滤器”链接来重置过滤器(包括“#txtSearch”文本框)。过滤器在清除后将始终工作,并且跟踪显示没有前导空格。theString 和 searchString 都在脚本 (="") 的顶部进行了初始化。我的问题是,

4

1 回答 1

0

没关系……自己造成的伤口。原来我用 value=" " 初始化了文本框。对不起!

于 2012-11-07T12:40:53.410 回答