Easyui treegrid可编辑状态下动态设置numberspinner类型列的max
来源:互联网 发布:北京 程序员培训班 编辑:程序博客网 时间:2024/05/22 02:44
1、如下图下部中的领用单明细信息是一个treegrid,可以多行编辑,并要选中行的领用数量编辑的最大值为该行产品的库存数量。
2、实现
var exportbillProductTreeGrid = null; $(function() { //领用产品明细列表 exportbillProductTreeGrid = $('#exportbillProductTreeGrid').treegrid({ url : "${pageContext.request.contextPath}/business/product/queryAllEnableProducts.do?shopId=${shopId}", idField : 'id', treeField : 'brandName', parentField : 'pid', dataPlain: true, fit : true, striped : true, fitColumns : false, rownumbers :true, border : false, nowrap : false, singleSelect : false, checkOnSelect : true, selectOnCheck : true, columns : [ [ { title : 'id', field : 'id', checkbox : true }, { field : 'brandName', title : '品牌', width : 120, align:'left' }, { field : 'name', title : '产品名称', width : 120, align:'center' }, { field : 'stockNum', title : '库存数量', width : 120, align:'center' }, { field : 'num', title : '领用数量', width : 120, align:'center', editor:{ type:'numberspinner', options: { max:10000000 } } }] ], onContextMenu : function(e, row) { e.preventDefault(); $(this).treegrid('unselectAll'); $(this).treegrid('select', row.id); $('#menu').menu('show', { left : e.pageX, top : e.pageY }); }, //当取消选中行 onUnselect : function(rowIndex, rowData){ //保存每一行的选中状态 var map = {}; //遍历每一行的checkbox,获取每一行的选中状态,并存放在map中 $('#exportBill_div input:checkbox').each(function(index,el){ map[index] = this.checked; }); var rIndex = 0; //获取父节点 var rows = exportbillProductTreeGrid.treegrid('getRoots'); for ( var i = 0; i < rows.length; i++) { rIndex++; //根据父节点,获取子节点 var children = exportbillProductTreeGrid.treegrid('getChildren',rows[i].id); //遍历子节点 for ( var j = 0; j < children.length; j++) { rIndex++; //如果子节点是选中的,该行进行编辑状态 if(map[rIndex]){ $(this).datagrid('beginEdit', children[j].id); }else{ //如果子节点不是选中的,退出编辑状态 $(this).datagrid('cancelEdit', children[j].id); } } } //设置每一行的checkbox为都不可编辑,也就是不可手动选中 $('#exportBill_div input:checkbox').each(function(index,el){ el.disabled=true; }); }, //当点击选中行 onSelect : function(rowIndex, rowData){ //保存每一行的选中状态 var map = {}; $('#exportBill_div input:checkbox').each(function(index,el){ map[index] = this.checked; }); var rIndex = 0; //获取父节点 var rows = exportbillProductTreeGrid.treegrid('getRoots'); for ( var i = 0; i < rows.length; i++) { rIndex++; //根据父节点,获取子节点 var children = exportbillProductTreeGrid.treegrid('getChildren',rows[i].id); for ( var j = 0; j < children.length; j++) { rIndex++; //如果子节点为选中,进行编辑状态 if(map[rIndex]){ $(this).datagrid('beginEdit', children[j].id); }else{ //如果子节点没有选中,退出编辑状态 $(this).datagrid('cancelEdit', children[j].id); } } } }, loadFilter: function (data, parent) { var opt = $(this).data().treegrid.options; return treeFilter(data, opt); }, onBeforeSelect: function(node) { //只能选择产品行,不能选择品牌行 //只能选择叶子节点,不能选择非叶子节点 if(!node.name){ return false; } }, onLoadSuccess:function(){ //加载成功后,checkbox不可以手动勾选 $('#exportBill_div input:checkbox').each(function(index,el){ el.disabled=true; }); }, //在激活编辑状态前 onBeforeEdit:function(node){ //获取要进入编辑状态的的数据行中的num可编辑列的option var columnOption = exportbillProductTreeGrid.treegrid('getColumnOption',"num"); //动态设置领用数量输入框的最大max为该产品的库存数量 columnOption.editor.options.max = node.stockNum; } }); });
主要代码:
阅读全文
0 0
- Easyui treegrid可编辑状态下动态设置numberspinner类型列的max
- 扩展jQuery easyui datagrid增加动态改变列编辑的类型(treegrid也适用)
- easyUI 设置列可编辑
- 动态设置EditText的可编辑状态
- knockoutjs + easyui.treegrid 可编辑的自定义绑定插件
- [Easyui TreeGrid]多行选中可编辑,再次单击退出编辑状态
- 【easyui】datagrid的列可编辑
- JQUERY EASYUI DATAGRID设置可编辑行的某个列不可编辑
- easyui实现可新增不可编辑的datagrid及动态配置列隐藏/显示
- easyui datagrid 动态改变列编辑类型示例
- 扩展jQuery easyui datagrid增加动态改变列编辑的类型
- 转帖:扩展jQuery easyui datagrid增加动态改变列编辑的类型
- easyUI NumberSpinner
- EasyUI的treegrid 递归动态 填充数据
- EasyUI——numberspinner的onChange事件
- easyui datagrid editor在编辑状态下更新列值并不结束编辑。
- [Easyui Treegrid ]单行选中编辑
- div可编辑状态设置
- 高德地图 Javascript web API 1.3根据输入的地址搜索位置的经纬度编码
- ES6学习——箭头函数
- 安卓屏幕分辨率及UI尺寸详解
- 多维数组变一维数组(先join,再split)
- table
- Easyui treegrid可编辑状态下动态设置numberspinner类型列的max
- SeekBar与TextView简单联动
- sql各种查询技巧
- 文件路径配置
- Android Studio 打包国际化报错以及解决方案
- php,验证身份证,年龄,归属地址,性别
- Hiredis安装使用及浅析和一个利用Hiredis实现的简单类
- 使用开源的PullToRefreshScrollView scrollTo和scrollby遇到的问题
- spark常见问题