## 表单值改变事件: **子表名_onlChange** ### 说明:当子表的值发生改变的时候,关联修改主表的字段值。 ### 示例场景:订单明细表(子表)商品数量/单价发生改变时,订单表(主表)的总金额跟着变。 - 创建表单 1.建立订单表(主表)`jee_order` | 字段 | 描述 | | --- | --- | | order_no | 订单编码 | | money| 订单总金额 | | note|订单描述 | 2.建立明细表(子表)`jee_detail` | 字段 | 描述 | | --- | --- | | name| 商品名称 | | price| 单价 | | num|数量 | - 配置Js增强 ![](https://img.kancloud.cn/94/ac/94acbc0b0f6dc16232a37378979b45d7_797x394.png) - 代码: ``` jee_detail_onlChange(){ return { price(){ let total = 0 // 使用getSubTableInstance方法替换原有的refmap取值 this.getSubTableInstance('jee_detail').getValues((err,values)=>{ if(values && values.length>0){ for(let item of values){ total+=item.price*item.num; } } this.triggleChangeValues({money: total}) }) }, num(){ let total = 0 // 使用getSubTableInstance方法替换原有的refmap取值 this.getSubTableInstance('jee_detail').getValues((err,values)=>{ if(values && values.length>0){ for(let item of values){ total+=item.price*item.num; } } this.triggleChangeValues({money: total}) }) } } } ``` >[info] 1.获取子表表单或table的对象使用api:`this.getSubTableInstance('jee_detail')`,jee_detail为表名 > 2.this.getSubTableInstance('jee_detail').getValues获取一对多子表的所有数据 > 3.如果想获取一对一的表单所有值,使用:this.getSubTableInstance('jee_detail').getFieldsValue() - 表单效果 ![](https://img.kancloud.cn/0c/9c/0c9c9f423ab7c0f895bf6abe68fc1ac9_1158x522.png)