EXTJS开发笔记01_ext grid动态加载数据库.可根据值进行来进行判断是否选中
在网上看了很多例子.来实现grid动态加载数据.可根据值进行来进行判断是否选中,
发现都比较麻烦.有的是在store的load()里面进行判断等.
代码较多.最关键在EXT4.0以后版本中.测试结果不理想...
所以换了一种方法.发现比较简便.代码如下:
selModel: Ext.create('Ext.selection.CheckboxModel', {
renderer: function(value, metaData, record, rowIndex, colIndex, store, view) {
if(record.data.CheckUp == 1) {
return '<input type="checkbox" id="'+record.data.Id+'" name="eids" checked="checked" />'
} else{
return '<input type="checkbox" id="'+record.data.Id+'" name="eids" />'
}
},
mode: 'MULTI'
})
在下边 Button中得自己通过ID到CHECKBOX
handler: function () {
var selectid="";
var chids =document.getElementsByName('eids');
var ids="";
for (var n = 0; n < chids.length; n++) {
if (chids[n].checked == true) {
ids += chids[n].id+',';
}
};
selectid+=ids;
Ext.Ajax.request({
url:'/BookCategory/UpdateCategoryTag',
method:'POST',
params:{
strId: selectid
},
waitTitle: '添加标签信息',
waitMsg: '正在处理',
success: function () {
addWin.hide();
},
failure: function () {
Ext.Msg.alert('添加标签', '添加标签失败');
}
});
}
同理.EXTJS中Grid变色及判断值等类似功能,都可以用类似方法实现
{
text: "是否加红",
renderer: function (val) {
if(val==0) {
return '<span style="color:blue;"> 否 </span>';
} else if(val==1){
return '<span style="color:red;"> 是 </span>';
}
}