window.showModalDialog 无法在chrome接收返回值
程序是JSP的程序,在IE下正常通过,在chrome下无法得到,我针对chrome写了判断语句,但是子页面返回给主页面的对象.属性,,在主页面chrome提示未定义,代码...
程序是JSP的程序,在IE下正常通过,在chrome下无法得到,我针对chrome写了判断语句,但是子页面返回给主页面的对象.属性,,在主页面chrome提示未定义,代码如下:
父页面的JS:
function ChooseCode()
{
var qryFldVal = document.getElementById('qryFld').value;
var returnValue = window.showModalDialog('usrdatalist_frame.jsp?
qryFld='+qryFldVal,window,'dialogWidth:550px;dialogHeight:450px;center:yes;help:no;status:no');
// for chrome
if (returnValue == undefined) {
document.getElementById('findKey').value = window.returnValue.name;//chrome这里无法识别
} else {
document.getElementById('findKey').value = returnValue.name;
}
}
子页面JS:
function onok(count)
{
if(doChoose(count))
{
var obj = new Object();//新建一个对象
obj.name = xsform.usrData.value;//用户选择的值赋值给obj的name
//for chrome
if(window.opener != undefined) {
window.opener.returnValue = obj; //将这个对象返回给子页
} else {
window.returnValue = obj;
}
window.parent.close();
}
}
现在在CHROME下,主页面收不到值,停留错误在 Uncaught TypeError: Cannot read property 'name' of undefined,无法读取未定义的属性! 展开
父页面的JS:
function ChooseCode()
{
var qryFldVal = document.getElementById('qryFld').value;
var returnValue = window.showModalDialog('usrdatalist_frame.jsp?
qryFld='+qryFldVal,window,'dialogWidth:550px;dialogHeight:450px;center:yes;help:no;status:no');
// for chrome
if (returnValue == undefined) {
document.getElementById('findKey').value = window.returnValue.name;//chrome这里无法识别
} else {
document.getElementById('findKey').value = returnValue.name;
}
}
子页面JS:
function onok(count)
{
if(doChoose(count))
{
var obj = new Object();//新建一个对象
obj.name = xsform.usrData.value;//用户选择的值赋值给obj的name
//for chrome
if(window.opener != undefined) {
window.opener.returnValue = obj; //将这个对象返回给子页
} else {
window.returnValue = obj;
}
window.parent.close();
}
}
现在在CHROME下,主页面收不到值,停留错误在 Uncaught TypeError: Cannot read property 'name' of undefined,无法读取未定义的属性! 展开
1个回答
展开全部
父页面的JS:
function ChooseCode(){
var qryFldVal = document.getElementById('qryFld').value;
var rValue = window.showModalDialog('usrdatalist_frame.jsp?
qryFld='+qryFldVal,window,'dialogWidth:550px;dialogHeight:450px;center:yes;help:no;status:no');
// for chrome
if (rValue == undefined) {
document.getElementById('findKey').value = window.returnValue.name;
} else {
document.getElementById('findKey').value = rValue.name;
}
}
试一下上边的。
追问
Uncaught TypeError: Cannot read property 'name' of undefined
还是报错
追答
需要完整代码调试,这里信息太少了。我也只是猜测。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询