Index: ssts-web/src/main/webapp/disinfectsystem/recyclingApplication/goodsApplicationForm.js =================================================================== diff -u -r20027 -r20158 --- ssts-web/src/main/webapp/disinfectsystem/recyclingApplication/goodsApplicationForm.js (.../goodsApplicationForm.js) (revision 20027) +++ ssts-web/src/main/webapp/disinfectsystem/recyclingApplication/goodsApplicationForm.js (.../goodsApplicationForm.js) (revision 20158) @@ -714,10 +714,8 @@ pageSize:100, listeners : { select : function(combo, records, index) { - var record = records; - if (records.length > 0){ - record = records[0]; - } + var record = transformRecords(records); + top.Ext4.getCmp('package1').setRawValue(record.data.name); curSelectedGoods = record.data; var tousseType = record.data.tousseType; @@ -1057,10 +1055,12 @@ allowBlank : false, flex : 1, listeners:{ - select:function(combo, record, index){ + select:function(combo, records, index){ + var record1 = transformRecords(records); + //1、获取申请科室的名称和编码 - var deptName = record[0].data.name; - var deptCoding = record[0].data.id; + var deptName = record1.data.name; + var deptCoding = record1.data.id; //2、设置“申请科室的科室编码”和“结算科室的科室编码” top.Ext4.ComponentQuery.query("#recyclingApplicationForm #departCoding")[0].setValue(deptCoding); @@ -1125,8 +1125,9 @@ allowBlank : false, flex : 1, listeners:{ - select:function(combo, record, index){ - top.Ext4.getCmp("settleAccountsDepartCoding").setValue(record[0].data.id); + select:function(combo, records, index){ + var record = transformRecords(records); + top.Ext4.getCmp("settleAccountsDepartCoding").setValue(record.data.id); }, focus : function(thiz){ thiz.selectText(); @@ -1533,4 +1534,17 @@ return true; } } -} \ No newline at end of file +} + +/** + * 转换records,因为Ext4的combo的select事件有点小bug,第二个参数records在API写的是一个数组类型,但是在某种情况下他是一个对象(即:手动输入一个Store存在的数据时),因此写下此函数,转换一下 + * @param records + * @returns + */ +function transformRecords(records) { + var record = records; + if (records && records.length > 0){ + record = records[0]; + } + return record; +}