我使用 extjs4,
我想在我的网格中添加一个过滤器(按行或列中的数据过滤)
目前我可以使用从数据库中检索到的数据来显示我的网格,
这是我的代码:
Ext.define('DataEmployeeList', {
extend: 'Ext.data.Model',
fields: [
{name: 'id_emplyee', type: 'string'},
{name: 'firstname', type: 'string'},
{name: 'lastname', type: 'string'} ,
{name: 'work', type: 'string'}
]
});
var DataEmployeeListGridStore = Ext.create('Ext.data.Store', {
model: 'DataEmployeeList'
});
var DataEmployeeListGrid1 = Ext.create('Ext.grid.Panel', {
id:'DataEmployeeListGrid',
store: DataEmployeeListGridStore,
collapsible:true,
columns:
[
{xtype: 'checkcolumn', header:'display data', dataIndex: 'checked', width: 60,listeners:{'checkchange': requestGridSelectionChanged}},
{text: 'رق', flex: 1, sortable: true, hidden:true, dataIndex: 'id_employee'},
{text: 'firsname', flex: 1, sortable: true, dataIndex: 'firstname'},
{text: 'lastname', flex: 1, sortable: true, dataIndex: 'lastname'},
{text: 'work', flex: 1, sortable: true, dataIndex: 'work'}
],
columnLines: true,
anchor: '100%',
height: 250,
frame: true,
margin: '0 5 5 5',
});
function fillEmployeeList()
{
employeeService.findAllEmployee({
callback:function(list)
{
DataEmployeeListGridStore.removeAll();
if (list!=null)
{
for(var i=0; i<list.length; i++)
{
var id=list[i].idEmployee;
var firstN=list[i].firstname;
var lastN=list[i].lastname;
var workEmp= list[i].work;
DataEmployeeListGridStore.add({id_employee:id, firstname:firstN, lastname :lastN, workEmp : work});
}
}
}
});
}
Ext.onReady(function() {
fillEmployeeList();
}
我的employeeService.java:
public class employeesService{
public List<employees> getEmployeesListByLibelle() {
// TODO Auto-generated method stub
Query query = getSession().createQuery("FROM employees");
List result = query.list();
if(result.size()!=0 && result !=null)
return result;
else
return null;
}
}
正如我已经说过的,我可以用正确的数据显示我的 drid ,
现在我想在我的网格上方添加一个文本字段,以便根据在文本字段中输入的数据输入相同的数据来过滤我的网格
我认为 extjs 提供了在网格中进行过滤的可能性,但在这种情况下我找不到任何解决方案
我的目标是如果可以使用 extjs 中的插件在文本字段中选择或在与过滤器相关的另一个组合物中选择我们要执行过滤器的列并在文本文件中输入相同的数据以完成此过滤器