页面之间传值有两种方法
(一)
要是在页面加载完成直接得到相应的值显示在页面上,这种值比较少的情况下直接利用URL进行传值。
在父页面得到相应需要传输的字段的值,然后再Ext.create中的参数srl中添加进去
在子页面负责接收: var crmEntid = "<%=request.getAttribute("crmEntid")%>";
要是子页面需要直接加载显示
// 需要同步,保证先获取所有数据字典,再设置控件默认值
getDict2('crmEntid', 'crm_entid', 0, false);
var value = "<%=request.getAttribute("crmEntid")%>";
$('#crmEntid').val(value);
这里$('#crmEntid').val(value);表示对Id为crmEntid的字段进行初始话,直接显示对应的值。对应的上面的操作都在Ext.onReady中
(二)
第二种就是直接在页面上自己读取父页面对应参数的值。
在父页面:
<!-- 保存选中的数据 ,返回到页面-->
<input type="hidden" id="result" value=""/>
//对result进行封装,等字面读取
var data = grid.getSelectionModel().getSelection();
if(data.length>0){
var value = '';
//多个值进行拼接,行程一个逗号隔开的列
for(var i=0; i<data.length; i++){
value = value + data[i].get("employeeId") + ',';
}
$("#result").val(value.substr(0, value.length-1));
}else{
$("#result").val('');
Ext.MessageBox.show({
title: "提示",
msg: "请选择需要修改的导购员!"
});
return;
}
在子页面:
//子页面读取父页面搞好的值
var result = window.parent.$("#result").val();
//将父页面封装好的列按照逗号进行拆分然后存成LIST
var employeeIdList = result.split(',');