ExtJS5 - 用鼠标拖拽Grid行进行排序及选择
2016-01-27 15:50
483 查看
对Grid中的数据进行手动排序,以及在多个Grid之间相互移动行数据是比较常见的业务逻辑。利用Ext.grid.plugin.DragDrop类,可方便地实现这两个效果。
1、实现Grid行的上下移动
代码运行效果:
2、实现多个Grid之间的相互移动
要让行数据可在多个Grid之间相互移动,只需在Grid引用Ext.grid.plugin.DragDrop插件时,为其指定同一个组名,表明它们属于同一组,可相互移动。
当然,前提是这些Grid使用的Model类应该一致,即表格字段应该一致。
代码运行效果如下:
1、实现Grid行的上下移动
Ext.onReady(function() { var proStore = Ext.create("Ext.data.Store", { fields: ["code", "name", "num"], data: [ ["#001", "iPhone6", 100], ["#002", "iPhone6 Plus", 80], ["#003", "Mi Note4", 99], ["#004", "Galaxy S6", 75], ["#005", "Smartisan T2", 68] ] }); Ext.create("Ext.grid.Panel", { title: "可用鼠标拖拽行数据的Grid", width: 400, margin: 10, border: true, store: proStore, columns: [{ text: "产品编号", dataIndex: "code", flex: 1 }, { text: "产品名称", dataIndex: "name", flex: 1 }, { text: "产品数量", dataIndex: "num", flex: 1 }], viewConfig: { plugins: { ptype: "gridviewdragdrop", dragText: "可用鼠标拖拽进行上下排序" } }, renderTo: Ext.getBody() }); });
代码运行效果:
2、实现多个Grid之间的相互移动
要让行数据可在多个Grid之间相互移动,只需在Grid引用Ext.grid.plugin.DragDrop插件时,为其指定同一个组名,表明它们属于同一组,可相互移动。
当然,前提是这些Grid使用的Model类应该一致,即表格字段应该一致。
viewConfig: { plugins: { ptype: "gridviewdragdrop", ddGroup: "DrapDropGroup" } }
代码运行效果如下:
相关文章推荐
- js中table的值进行点击排序
- JS 学习1--开始
- 使用javascript实现银行卡号的Luhn校验或验证算法
- Javascript性能优化之异步加载和执行
- 20160127--Jsp
- Extjs4 获取到前一天的日期
- JavaScript-时间倒计时
- JSP EL表达式详细介绍
- javascript改变position值实现菜单滚动至顶部后固定
- js checkbox
- js弹出框、对话框、提示框、弹窗总结
- js 表单验证
- javascript 备忘
- javascript学习导图
- [ExtJS5学习笔记]第三节 sencha cmd学习笔记 生成应用程序构建的内部细节
- 在Ext JS 6中添加本地化包
- JS post跨域及js类定义及使用
- 不用一句js代码初始化组件
- AnguarJS中链式的一种更合理写法
- 封装属于自己的JS组件