Metrics
0
Watch 2.7K Star 5.5K Fork 2.8K

ThinkGem / JeeSite 4.xJavaAGPL-3.0

表单子表dataGrid校验有问题及删除行在新增有问题

Closed
吴先生  Created at

该问题是怎么引起的?

问题1:当字表添加多行时,校验不过提示,不是每行都提示。
问题:2当删除随意点击删除一行时,发现行里的input 的name 错乱了,如下会重复出现mpErpOutputOrderDetailList[0].mpSysWarehouseInfo.warehouseName 出现两次或者过多次

重现步骤

问题1重现:1.子表dataGrid编辑框,将某个input做校验非空。
2.新增一行点击,有非空提示 后再点击新增一行
3.再次点击保存,则第二行不会提示非空校验
问题二重新:
1.子表dataGrid编辑框,将某个input做校验非空,不然提交后台先
2.多新增几行,点击保存
3.随意删除最后一行,在新增一行点击保存
4.在随意删除一行,在点击保存 按f12 看input 的name有重复下标 如:
mpErpOutputOrderDetailList[0].mpSysWarehouseInfo.warehouseName
mpErpOutputOrderDetailList[0].mpSysWarehouseInfo.warehouseName 出现两次

报错信息

  ![输入图片说明](https://images.gitee.com/uploads/images/2019/0312/171949_81b7b55b_2161049.png "屏幕截图.png")
6732_thinkgem total 2 participants

Comments (4)

6732_thinkgem
/thinkgem 2019-03-18 21:59 owner
  1. 因为validate在校验的时候是通过控件name必须唯一进行校验的,name不能重复,在jqgrid列表中是重复的,所以在提交表单之前会重写这个name。重写name的列表在editGridInputFormListAttrs 中设置。
  2. 检查下你的 editGridInputFormListAttrs 中是否有对应重复的属性,这个是提交前替换对应名称的列表
/manlxl 2019-03-20 15:35

@ThinkGem
你没理解我问题的意思,在这个http://demo.jeesite.com/js/a/index#/js/a/demo/form/editForm 里面有同样的问题;
他的editGridInputFormListAttrs:status,id,testSort,testData.id,testInput,testTextarea,testSelect,testSelectMultiple,testRadio,testCheckbox,testDate,testDatetime,testUser.userCode,testOffice.officeCode,testAreaCode,testAreaName,', // 提交数据列表的属性字段 这里是没有重复的
editGridInputFormListAttrs 里没有重复的属性,重写dataGrid中input的name方法在哪里?
问题重现: 你先添加三行 - 点击保存 这是时候input 的name重写了 - 然后删除中间一行,再点击新增一行,点击保存,你会发现第一行和第三行的name重复了(testDataChildList[0].testSort )。输入图片说明

6732_thinkgem
/thinkgem 2019-03-22 16:41 owner

@吴先生 谢谢反馈,当有验证的时候确实存在存在这个问题。此问题已修正,mvn -U 强制更新项目即可生效。如果还有问题,@ 下我

/manlxl 2019-03-25 09:38

@ThinkGem 您更新的是JeeSite 4.x 版本吗 重新更新项目还是有一样的问题。 :blush:

Sign in and comment

Assignee
Labels
Not set
Project
Milestone
Branch
Scheduled start
Not set
Scheduled end
Not set
Top level
Priority

Help Search

Gitee_sixth 5th_float_left_close