关注JEECG发展历程 关注最新动态和版本, 记录JEECG成长点滴 更新日志 - 技术支持 - 招聘英才

JEECG最新版本下载 JEECG智能开发平台 - 显著提高开发效率 常见问题 - 入门视频 - 参与开源团队

商务QQ: 69893005、418799587 商务热线(5*8小时): 010-64808099 官方邮箱: jeecgos@163.com

查看: 18384|回复: 8

[Online开发] popup,返回值纵向增加,而不是横向

[复制链接]
发表于 2018-11-11 17:28:26 | 显示全部楼层 |阅读模式
我现在有个入库单,采用的是主附表,附表采用的是一对多,附表采用popup来进行获取物品的信息。

现在有个问题,我想获取多个物品信息,而现在popup中选择多选后,所有信息都返回在一块了,而不是各自成行。
发表于 2018-11-12 10:32:26 | 显示全部楼层
这个需要你自己改造
 楼主| 发表于 2018-11-12 11:01:57 | 显示全部楼层
tianshan 发表于 2018-11-12 10:32
这个需要你自己改造

我知道,默认的方法如果修改的话,这个问题又彻底变成纵向添加而不是横向添加了,但问题是在哪个环节改了。这个不会呀。
发表于 2018-11-20 14:23:02 | 显示全部楼层
自己写js增强来实现,完全自定义开发
发表于 2018-11-20 14:24:12 | 显示全部楼层
把popup方法加个回调函数,选择完之后执行回调函数,切割选取的数据,动态添加子表数据!
发表于 2018-11-20 14:27:35 | 显示全部楼层
popup 触发的js 方法  popupClick   
该方法 在 /src/main/webapp/plug-in/tools/curdtools.js
/**
*   object: pobj当前操作的文本框.
*   tablefield:对应字典TEXT,要从popup报表中获取的字段.
*   inputnames:对应字典CODE,当前需要回填数据的文本框名称.
*   pcode:动态报表的code
*/
function popupClick(pobj,tablefield,inputnames,pcode)


可参照此方法改造
 楼主| 发表于 2018-11-21 15:39:04 | 显示全部楼层
popup中添加了返回函数,使用事件onchange


我自己添加的方法是这个
function d(index){
                   var itemId = $("#warehouseReceiptListList\\["+index+"\\]\\.itemId").val();
                   var itemName = $("#warehouseReceiptListList\\["+index+"\\]\\.itemName").val();
                   var specifications = $("#warehouseReceiptListList\\["+index+"\\]\\.specifications").val();
//                 console.info(itemId);
            var id = itemId.split(",");
                   var name = itemName.split(",");
                   var s = specifications.split(",");
            if(id.length>1){
                    for(var i = 0;i<id.length;i++){
                            addtr();
                            var q = index + i;
                            if(i==0){
                                            $("#warehouseReceiptListList\\["+index+"\\]\\.itemId").val(id[i]);
                                            $("#warehouseReceiptListList\\["+index+"\\]\\.itemName").val(name[i]);
                                            $("#warehouseReceiptListList\\["+index+"\\]\\.specifications").val(s[i]);
                                            console.info(s[i]);
                            }  else{
                                            $("#warehouseReceiptListList\\["+q+"\\]\\.itemId").val(id[i]);
                                            $("#warehouseReceiptListList\\["+q+"\\]\\.itemName").val(name[i]);
                                            $("#warehouseReceiptListList\\["+q+"\\]\\.specifications").val(s[i]);
                            }                 
                    }
            }
    }

该方法添加后,经常获取的值是原来的值,而不是POPUP获取后的值,并且奇怪的是,第一次循环时,itemId最后返回的是一个值,但剩下的两个就是全部返回,语句就没有执行。
发表于 2018-11-21 15:42:33 | 显示全部楼层
自己写的代码有问题 ,自己解决!
 楼主| 发表于 2018-11-21 15:44:32 | 显示全部楼层
tianshan 发表于 2018-11-21 15:42
自己写的代码有问题 ,自己解决!

哪有问题,都是获取或赋值啊。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表