Ext GridPanel实现复选框选择框:
var selectModel = new Ext.grid.CheckboxSelectionModel({
singleSelect : false
});
但是这样每一行都会有复选框,如果需求为:某行数据的某个列满足什么条件我才有复选框选项就不太好实现了,
这样就需要重写Ext.grid.CheckboxSelectionModel的渲染,行点击涵数来实现.
var selectModel = new Ext.grid.CheckboxSelectionModel({
singleSelect : false,
renderer : function(v, p, record){
if (record.data['结果状态'] == '0'){
return '';
}
return '<div class="x-grid3-row-checker"> </div>';
},
onHdMouseDown : function(e, t) {
if (t.className == 'x-grid3-hd-checker') {
e.stopEvent();
var hd = Ext.fly(t.parentNode);
var isChecked = hd.hasClass('x-grid3-hd-checker-on');
if (isChecked){
hd.removeClass('x-grid3-hd-checker-on');
this.clearSelections();
}else {
hd.addClass('x-grid3-hd-checker-on');
if (this.locked){
return;
}
this.selections.clear();
for (var i = 0, len = this.grid.store.getCount(); i < len; i++ ){
if (this.grid.store.getAt(i).data["结果状态"] != '0'){
this.selectRow(i, true);
}
}
}
}
},
handleMouseDown : function(g, rowIndex, e){
if (e.button !== 0 || this.isLocked()) {
return;
}
var view = this.grid.getView();
if (e.shiftKey && !this.singleSelect && this.last != false ) {
var last = this.last;
this.selectRange(last, rowIndex, e.ctrlKey);
this.last = last;
view.focusRow(rowIndex);
}else{
var isSelected = this.isSelected(rowIndex);
if (e.ctrlKey && isSelected) {
this.deselectRow(rowIndex);
}else if(!isSelected || this.getCount() > 1){
if(this.grid.store.getAt(rowIndex).data["结果状态"] != '0'){
this.selectRow(rowIndex, e.ctrlKey || e.shiftKey);
}
view.focusRow(rowIndex);
}
}
}
});
分享到:
相关推荐
Ext GridPanel 中实现加链接操作 Ext GridPanel 中实现加链接操作 Ext GridPanel 中实现加链接操作
EXT GridPanel获取某一单元格的值
将页面的GridPanel中的数据导出到Excel中 测试Ext:版本2.2.1 支持GridSummary,GroupSummary和GroupHeaderPlugin插件 使用方法: 1)把三个JS文件引入到页面中 2)调用例句: var data2Excel = new Ext.icss.Data2...
主要介绍了Extjs gridpanel 中的checkbox(复选框)根据某行的条件不能选中的解决方法,需要的朋友可以参考下
Ext的gridpanel控件二次加载时丢失解决方案
使用ext.net代码动态创建gridpanel后任意显示在各种窗口中
Ext.grid.GridPanel 删除线 放到example文件夹下运行
NULL 博文链接:https://shenhaiquan.iteye.com/blog/1474328
EXT实例GridPanel. 实现简单的。
Ext.grid.ColumnModel显示不正常
ext.net gridpanel 弹出窗
Ext GridPanel加载完数据后进行操作,比如load数据之后选定某些行数据,下面有个示例,需要的朋友可以参考下
Ext.grid.GridPanel属性祥解, 表格部门的详解,通俗易懂,适合初学人员,以及想对GridPanel有个精析认识的Web开发人员
该例子实现了ext的gridpanel多层表头+分组+小计以及与Java后台交互的全代码。还有自适应浏览器大小的功能包括导出excel,里面有注释,可能注释不全。分别为group.jsp,totals.jsp页面。
tapestry4.02中封装ext的GridPanel组件
对于GridPanel中拖动选中行排序的实现,网上有不少ExtJs实现的例子,但是没有找到使用Ext.net实现的,正好最近有个需求要使用,干脆来写一个。 DEMO功能说明: 1、拖动GridPanel选中行到新位置排序。 2、在拖动结束...
NULL 博文链接:https://wv1124.iteye.com/blog/741559
EXT中三种方法实现在DataGrid上显示toolTip
下面是复选框的且带右键菜单的树代码。 HTML code Ext.BLANK_IMAGE_URL = "../resources/images/default/s.gif"; Ext.QuickTips.init(); Ext.state.Manager.setProvider(new Ext.state.CookieProvider()); ...