我有一个iframe,它以模态打开。内容存在于iframe.jsp中。现在iframe包含一个下拉列表。在更改下拉列表时,我将调用另一个窗口。但是,如果用户在下拉选项中选择了选项:camRip,则不会调用该窗口。
我的变更代码如下:
<select id="hamStan" onchange = "callWindow('<%=URL %>');">
我的改变是这样的:
function callWindow(URL) {
var selectedByUser = document.getElementById("hamStan");
var strUserText = selectedByUser.options[selectedByUser.selectedIndex].text;
if(strUserText!="camRip ")
{
var windowName = "popUp";
var windowSizeArray = [ "width=740,height=400,top=10,left=50,toolbar=1,location=1,directories=0,status=0,menuBar=1,scrollBars=1,resizable=1"];
window.open(URL,windowName,windowSizeArray);
}
}
但问题是selectedByUser即将出现。我哪里错了?请帮助。如何从模态iframe.jsp获取用户选择的下拉值?
答案 0 :(得分:0)
经过大量研究后我终于找到了解决方案。
这就是我的成就:
function callWindow(URL) {
var iframe = window.parent.parent.document.getElementById('myIframe');
var iwin= iframe.contentWindow || iframe.contentDocument.defaultView;
var selectedByUser = iwin.document.getElementById('hamStan');
var strUserText = selectedByUser.options[selectedByUser.selectedIndex].text;
if(strUserText!="camRip ")
{
var windowName = "popUp";
var windowSizeArray = [ "width=740,height=400,top=10,left=50,toolbar=1,location=1,directories=0,status=0,menuBar=1,scrollBars=1,resizable=1"];
window.open(URL,windowName,windowSizeArray);
}
}
请确保您正确访问iframe-id否则变量iframe将为您提供类型错误。希望它能帮助别人。