我有一个附加到tableView的搜索栏
searchBar = Ti.UI.createSearchBar({
value : null,
});
var table = Ti.UI.createTableView({
filterAttribute: 'filterCriteria',
search = searchBar
});
var tbl_data = [
{title:'Row 12', filterCriteria : 'Row 12'},
{title:'Row 2', filterCriteria : 'Row 2'},
{title:'Row 3', filterCriteria : 'Row 3'}
];
table.setData(tbl_data);
当我在栏中输入信息时,例如" 2",根据我在搜索框中输入的值过滤行;在过滤器的情况下" 2"给出的结果将是[{title:'第12行'},{title:'第2行'}]
我可以使用
访问表格中的所有数据/行table.data[0].rows;
我如何访问表格中已过滤的行?
答案 0 :(得分:0)
根据文档:http://docs.appcelerator.com/platform/latest/#!/api/Titanium.UI.TableView-property-filterAttribute filterAttribute
定义要使用的TableViewRow
的属性。因此,您必须在TableViewRow
上添加此属性,如下所示:
var tbl_data = [
{title:'Row 12', filterCriteria : 'Row 12'},
{title:'Row 2', filterCriteria : 'Row 2'},
{title:'Row 3', filterCriteria : 'Row 3'}
];
然后,如果您想要访问已过滤的行,可以在TableView
上添加点击事件:
table.addEventListener('click', function(e){
Ti.API.log(' e.row ' + JSON.stringify(e.row)); //the clicked row
});