近期项目中,使用easyui制作了两个页面,其中A页面会弹出B页面,但是A页面会传递参数至B页面,在接收传递参数时,出现了一个小的波折
经过看API发现
dialog的功能是将B页面嵌入至A页面,这样,A页面作为B页面的父容器,所有的元素均可以被B页面访问
所以,之前的通过js获取页面参数方法就不适用了,因为B页面在js端获取的href实际上为A页面的href
那么问题来了:我怎么获取B页面的链接参数呢?
其实很简单,只要找到B页面的存放容器即可:
代码如下:
页面A代码:
1 //详情查看 2 function goToDetail(val) { 3 //var url = '../Stock/CheckInventory/RandomCheckInventoryDetail.html?checksysno=' + val; 4 var url = 'RandomCheckInventoryDetail.html'; 5 var title = '随机盘查明细【' + val + '】'; 6 7 //setPopFrameUrl(url, 1000, 550, title); 8 $('#dd').dialog({ 9 title: title, 10 1000, 11 height: 550, 12 closed: false, 13 cache: true, 14 collapsible:true, 15 href: url, 16 queryParams: { checksysno: val }, 17 modal: true 18 }); 19 }
页面B获取参数方法:
1 //获取页面url参数 2 function getQueryParam(name) { 3 var obj = $('#dd').dialog('options'); 4 var queryParams = obj["queryParams"]; 5 6 return queryParams[name]; 7 }
其实,主要的就是A页面方法中的queryParams属性设置
是不是很简单?