window.showmodaldialog()苹果浏览器不支持??在线求解!!

TommyWu01 2012-05-04 03:54:10
父页面中:


function selectCooperate(obj){
var userObject=new Object();
userObject.userString=document.getElementById(obj).value;
var selectUrl="${ctx}/DispatchAction.do?efFormEname=UITM25&serviceName=TMTask&methodName=selectAssistantUser&orgcode=&orgcodeFilter=${data.rootorg }&taskGuid=${data.taskparentguid}&allLeader=&random="+Math.random();

window.open(selectUrl,'newwindow','height=300,width=1000,top=0,left=0,toolbar=no,menubar=no,scrollbars=no, resizable=no,location=no, status=no');
var a =document.getElementById("i-0-valueString").value;
if(a!=undefined){

document.getElementById(obj).value=a;
selectCooperate_view(obj+"_view",a);
}

}


子页面中:



function okOrgUser(){
var users=document.getElementById("user_select");
var userString="";
for(var i=0;i<users.options.length;i++){
var currentOption=users.options[i];
if(i!=0)
userString+=";";
userString+=currentOption.value+",";
userString+=currentOption.userName+",";
userString+=currentOption.orgcode+",";
userString+=currentOption.orgname;
}

window.opener.document.getElementById("i-0-valueString").value=userString; //i-0-valueString 父页面中的文本框
window.close();

}



问题是:window.opener.document.getElementById("i-0-valueString").value=userString; 赋值成功后,父页面需再重新打开子页面再关闭才能看到值。




...全文
180 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
TommyWu01 2012-05-07
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

不要直接从子窗口操作父窗口的节点属性,尝试改为调用父窗口的所提供的函数(理解为回调函数),父窗口自己的这个回调函数来负责修改自己的值,你的这些代码也放入该回调函数中:

var a =document.getElementById("i-0-valueString").value;
if(a!=undefined){
document.getElementById(obj).val……
[/Quote]

将这段代码放在回调函数中,然后子页面直接调用这个方法吗?
MiceRice 2012-05-04
  • 打赏
  • 举报
回复
不要直接从子窗口操作父窗口的节点属性,尝试改为调用父窗口的所提供的函数(理解为回调函数),父窗口自己的这个回调函数来负责修改自己的值,你的这些代码也放入该回调函数中:

var a =document.getElementById("i-0-valueString").value;
if(a!=undefined){
document.getElementById(obj).value=a;
selectCooperate_view(obj+"_view",a);
}
翅膀下的风 2012-05-04
  • 打赏
  • 举报
回复
应该不需要的啊。
将主界面以下代码放到子界面中

var a =document.getElementById("i-0-valueString").value;
if(a!=undefined){

document.getElementById(obj).value=a;
selectCooperate_view(obj+"_view",a);
}




子界面为



function okOrgUser(){
var users=document.getElementById("user_select");
var userString="";
for(var i=0;i<users.options.length;i++){
var currentOption=users.options[i];
if(i!=0)
userString+=";";
userString+=currentOption.value+",";
userString+=currentOption.userName+",";
userString+=currentOption.orgcode+",";
userString+=currentOption.orgname;
}

window.opener.document.getElementById("i-0-valueString").value=userString; //i-0-valueString 父页面中的文本框

var a =document.opener.document.getElementById("i-0-valueString").value;
if(a!=undefined){

document.opener.document.getElementById(obj).value=a;
selectCooperate_view(obj+"_view",a);
}
window.close();

}

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧