页面间传递数组自己所使用的2种方法

本文介绍了两种在父页面与子页面间传递多选数据的方法:一是通过子页面直接获取父页面选择的数据ID数组;二是将数组转换为字符串通过URL参数传递。第一种方法解决了URL无法携带数组的问题,但只能被触发一次。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第一种是通过子页面直接取父页面的值  父页面的值是一个目前所选中的数据的id所组成的一个数组 父页面代码

 function getmoreid() {
                var selections = $('table.var_table').datagrid('getSelections');
                var keyName = 'ID';
                var keys = [];
                $.each(selections, function (k, v) {
                    if (v[keyName]) {
                        keys.push(v[keyName]);
                    }
                });
                return keys;
            }
            

跳转页面就不说了 然后子页面代码var moreid = window.parent.getmoreid(); 即可取到返回值 也就是父页面被选中的多条数据的id,避免了url不能带数组的问题。

 

第二种方法将数组先拼成字符串然后通过问号传参 传递后 再拆分即可不过此方法根据不同的浏览器会有字符数的限制 所以一般不是很推荐。 但是相比于第一个方法,在需要多次打开子页面的时候,第一种方法只会被触发一次 不知道谁有好的解决办法可以推荐一下。

2019.3.21更新

直接 每次打开子页面时 先触发一次 取值的操作即可

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值