Extjs多选框传值
来源:互联网 发布:史蒂芬金 it 编辑:程序博客网 时间:2024/06/04 18:37
1。首先是列表和复选框的显示(这里的sm是复选框的关键)
//弹出 查看明细的WINDOWfunction showDetail2(jjd_id){// 查选结果列表的数据源 var ds2 = new Ext.data.JsonStore({ autoLoad:true, root:'datas', totalProperty:'totalSize', baseParams:{ start:0, limit:15 }, proxy : new Ext.data.HttpProxy({ url:lcwPath+"/daxt/dajj.shtml?method=getDaJjqdDetail&jjd_id=" + jjd_id, method : 'POST'}), fields: ['WJGD_ID','WJXX_NSRMC','WJXX_NSRLSH','WJXX_ND','WJXX_TYPE','WJXX_SC_TYPE','WJXX_TMBH','JJD_TMBH'] }); var sm = new Ext.grid.CheckboxSelectionModel();//列表的序号var xh_start2 = 0;var queryList2 = new Ext.grid.GridPanel({title:config.string.detail,id:'queryGridPanel', store: ds2, sm:sm, region:'center', height: 350, selectedRowNumber:0,stripeRows:true, enableColumnMove: true, enableHdMenu: false, viewConfig : { forceFit: true }, loadMask:{msg:'正在查询数据,请稍候......'}, cm:new Ext.grid.ColumnModel({columns: [ new Ext.grid.RowNumberer({ header:config.string.number, width:35, renderer:function(value,metadata,record,rowIndex){ return xh_start2 + 1 + rowIndex;} }),sm, //{header:'',dataIndex:"WJGD_ID",align:'left',sortable: true,renderer:getId}, {header:config.string.WJXX_NSRMC,dataIndex:"WJXX_NSRMC",align:'left',sortable: true}, {header:config.string.WJXX_NSRLSH,dataIndex:"WJXX_NSRLSH",width:100,align:'left',sortable: false}, {header:config.string.WJXX_ND,dataIndex:"WJXX_ND",align:'left',sortable: false}, {header:config.string.WJXX_TYPE,dataIndex:"WJXX_TYPE",width:100,align:'left',sortable: false}, {header:config.string.WJXX_SC_TYPE,dataIndex:"WJXX_SC_TYPE",align:'center',sortable: false}, {header:config.string.WJXX_TMBH,dataIndex:"WJXX_TMBH" ,align:'center',sortable: false}, {header:config.string.JJD_TMBH,dataIndex:"JJD_TMBH" ,align:'center',width:120,sortable: false,flex: 1,renderer:formatDate} ], defaultSortable: false }), tbar : [{ text: '调整交接单', iconCls: 'btn-edit', handler:showTZ, scope: this },{ text: '关闭', iconCls: 'btn-close', handler: function() { win.close(); }, scope: this }],bbar: new Ext.PagingToolbar({store: ds2, pageSize: 10, displayInfo: true, emptyMsg: "未查询到记录", doLoad : function(start){ this.store.load({params:{start:start,limit:this.pageSize}}); } }) });var win = new Ext.Window({ title: config.string.ckzlqd, iconCls:'menu-arch-detail', closable:true, maximizable : true , width:850, height:400, border:false, plain:true, layout: 'border', modal : true, items: [queryList2] }); win.show(this); }
2.获取复选框的值(蓝色部分为给之后弹出表单的隐藏域设值)
//在外定义调整表单的窗口var winTZ;function showTZ(){var list=Ext.getCmp("queryGridPanel");var recordlist =list.getSelectionModel().getSelections();var array='';//alert(recordlist.length);for(var i=0;i<recordlist.length;i++){//alert(recordlist[i].get("WJGD_ID"));//取出数据//alert(recordlist[i].get("WJGD_ID"));if(array==null||array==''){array =recordlist[i].get("WJGD_ID");}else{array = array+ ','+recordlist[i].get("WJGD_ID");}}//alert(array); Ext.getCmp("wjgd_id").setValue(array);//初始化调整窗口winTZ = new Ext.Window({id:winTZ,border:false,maximizable:true,layout:'fit', width:430, closeAction:'hide', height:300,resizable : false,shadow : true,modal :true, closable:true, bodyStyle:'padding:5 5 5 5', animCollapse:true,items:[dataFormTZ]});winTZ.setTitle("调整交接单信息");winTZ.show();winTZ.center();//使窗口居中 }
3.下面是新弹出的表单
//表单项var dataFormTZ = new Ext.form.FormPanel({ labelAlign : 'right',bodyStyle : 'background-color:white;padding : 10px 10px 10px 10px ',labelSeparator : ":",frame:true,border:false,items : [{ xtype:'hidden', fieldLabel: "wjgd_id", id: 'wjgd_id', name : 'wjgd_id', anchor: '90%' },{ msgTarget : 'side', id:'djlxCmb', xtype : 'combo', allowBlank : false, editable : false, // 禁止手写及联想功能 blankText : "请选择交接单", fieldLabel :"交接单", store :combo_jjd, mode : 'local', emptyText : "请选择", forceSelection : true, selectOnFocus : true, triggerAction : 'all', displayField : 'text', valueField : 'value', hiddenName : 'jjd', anchor: '90%' }],buttons:[{id:'save_button',iconCls : 'btn-save',text : '保存',handler : submitFormX},{iconCls : 'btn-cancel',text : '关闭',handler : function(){//var winTZ=Ext.getCmp('winZT');//winTZ.hide();winTZ.hide();}}]});
4.最后是后台Action处理
/** * 调整交接单项目的方法(获得 WJGD_ID和TMBH_JJD,修改表da_wjgd) */public void tzJJD(){String jjd=this.getRequest().getParameter("jjd");String wjgd_id=this.getRequest().getParameter("wjgd_id");System.out.println(jjd);System.out.println(wjgd_id);String wjqdidStr[]=wjgd_id.split(",");int count=0;for(int i=0;i<wjqdidStr.length;i++){//获得链接Connection con=DatabaseUtils.getInstance().getXxgspt_db_conn();PreparedStatement pstmt;try {pstmt = con.prepareStatement("UPDATE DA_WJGD SET JJD_TMBH=? where WJGD_ID=?");pstmt.setString(1, jjd);pstmt.setString(2, wjqdidStr[i]);count=count+pstmt.executeUpdate();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}finally{try {con.close();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}if(count==wjqdidStr.length){ renderJsonFastSuccess(); }else{ renderJsonFastError(); }}
5.见图(就是把交接单明细这个grid里选中的值传到调整交接单信息这个窗口里的form上再进行操作)
0 0
- Extjs多选框传值
- ExtJS
- extJs
- ExtJs
- extjs
- ExtJS
- ExtJS
- Extjs
- ExtJs
- extjs
- Extjs
- Extjs
- Extjs
- extjs
- ExtJs
- extjs
- extjs
- ExtJS
- VS2012+Vld内存泄漏检测工具的安装
- 布隆过滤器(Bloom Filter)详解
- CoreData: error: (19) PRIMARY KEY must be unique
- JavaScript 大小转化B KB MB GB等的转化
- access restriction: The type * is not accessible due to restriction on required library
- Extjs多选框传值
- Hadoop新手学习指导
- 【python下使用OpenCV实现计算机视觉读书笔记1】输入输出
- MYSQL服务器my.cnf配置文档详解
- JS获得字符串字节数
- VMWare+Ubuntu13.10无法发现创建共享文件夹问题
- 最小路径覆盖(转)
- Android自定义控件打jar包
- net命令