wxl103010 发表于 2018-11-11 17:28:26

popup,返回值纵向增加,而不是横向

我现在有个入库单,采用的是主附表,附表采用的是一对多,附表采用popup来进行获取物品的信息。

现在有个问题,我想获取多个物品信息,而现在popup中选择多选后,所有信息都返回在一块了,而不是各自成行。

tianshan 发表于 2018-11-12 10:32:26

这个需要你自己改造

wxl103010 发表于 2018-11-12 11:01:57

tianshan 发表于 2018-11-12 10:32 static/image/common/back.gif
这个需要你自己改造

我知道,默认的方法如果修改的话,这个问题又彻底变成纵向添加而不是横向添加了,但问题是在哪个环节改了。这个不会呀。

admin 发表于 2018-11-20 14:23:02

自己写js增强来实现,完全自定义开发

tianshan 发表于 2018-11-20 14:24:12

把popup方法加个回调函数,选择完之后执行回调函数,切割选取的数据,动态添加子表数据!

fly1206 发表于 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)


可参照此方法改造

wxl103010 发表于 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);
                                          $("#warehouseReceiptListList\\["+index+"\\]\\.itemName").val(name);
                                          $("#warehouseReceiptListList\\["+index+"\\]\\.specifications").val(s);
                                          console.info(s);
                          }else{
                                          $("#warehouseReceiptListList\\["+q+"\\]\\.itemId").val(id);
                                          $("#warehouseReceiptListList\\["+q+"\\]\\.itemName").val(name);
                                          $("#warehouseReceiptListList\\["+q+"\\]\\.specifications").val(s);
                          }               
                    }
            }
    }

该方法添加后,经常获取的值是原来的值,而不是POPUP获取后的值,并且奇怪的是,第一次循环时,itemId最后返回的是一个值,但剩下的两个就是全部返回,语句就没有执行。

tianshan 发表于 2018-11-21 15:42:33

自己写的代码有问题 ,自己解决!:L

wxl103010 发表于 2018-11-21 15:44:32

tianshan 发表于 2018-11-21 15:42 static/image/common/back.gif
自己写的代码有问题 ,自己解决!

哪有问题,都是获取或赋值啊。
页: [1]
查看完整版本: popup,返回值纵向增加,而不是横向