父窗口:
<form name=form1>
<select name=parentList>
<option>请选择
</select>
</form>子窗口:
<select onchange="writeParentList(this.value)">
<option>请选择
<option value=aaa>aaa
<option value=bbb>bbb
<option value=ccc>ccc
<option value=ddd>ddd
<option value=eee>eee
</select><script language=javascript>
function writeParentList(str)
{
if(top==window) return; //若该页没有被 frame 则跳出
if(str=="") return;
if(parent.document.form1.parentList)
{
e = parent.document.form1.parentList;
var newOP=new Option(str, str, true, true);
for(var i=0; i<e.options.length; i++) //不重复
if(e.options[i].value == str) return;
e.options[e.options.length] = newOP;
}
}
</script>
<form name=form1>
<select name=parentList>
<option>请选择
</select>
</form>子窗口:
<select onchange="writeParentList(this.value)">
<option>请选择
<option value=aaa>aaa
<option value=bbb>bbb
<option value=ccc>ccc
<option value=ddd>ddd
<option value=eee>eee
</select><script language=javascript>
function writeParentList(str)
{
if(top==window) return; //若该页没有被 frame 则跳出
if(str=="") return;
if(parent.document.form1.parentList)
{
e = parent.document.form1.parentList;
var newOP=new Option(str, str, true, true);
for(var i=0; i<e.options.length; i++) //不重复
if(e.options[i].value == str) return;
e.options[e.options.length] = newOP;
}
}
</script>
解决方案 »
- 如何通过js即时在网页中显示用file控件在本地电脑中所选择的图片
- 使用jquery实现内容无缝滚动
- 颜色选择对话框chooseColorDlg的表示位置问题 急急急!!!
- 1.html 如何把 2.html全包进来
- 请问在javascript中如何连接mysql数据库?
- 请问可以用js改变一个input 的 type属性吗?
- 如何取得iframe的src值?
- 一个不错的网站,进来看一下吧!
- 我的JAVASCRIPT为什么没起作用?
- js里substring方法为什么全是小写的,为什么不是subString ?
- 框架集里的页面怎么取得request值?----孟子E章请帮忙
- 如何做可以更改字体的回复框
<form name=form1>
<select name=parentList>
<option>请选择
</select>
</form>
<script language=javascript>
function writeParentList(str)
{
if(top==window) return; //若该页没有被 frame 则跳出
if(str=="") return;
if(document.form1.parentList)
{
e = document.form1.parentList;
var newOP=new Option(str, str, true, true);
for(var i=0; i<e.options.length; i++) //不重复
if(e.options[i].value == str) return;
e.options[e.options.length] = newOP;
}
}
</script>子窗口:
<select onchange="opener.writeParentList(this.value)">
<option>请选择
<option value=aaa>aaa
<option value=bbb>bbb
<option value=ccc>ccc
<option value=ddd>ddd
<option value=eee>eee
</select>
在父窗口你竟然还保留着 if(top==window) return; 所以你抄的代码不会很好执行
在子窗口里应该加上一个判断: 若子窗口不是被open出来的话你用opener对象会出错的.
所以我建议你在看代码的时候多消化消化, 不要想当然的写代码, 且写完后一定要自己测试通过才可以拿出来.父窗口:
<form name=form1>
<select name=parentList>
<option>请选择
</select>
</form>
<script language=javascript>
function writeParentList(str)
{
if(str=="") return;
if(document.form1.parentList)
{
e = document.form1.parentList;
var newOP=new Option(str, str, true, true);
for(var i=0; i<e.options.length; i++) //不重复
if(e.options[i].value == str) return;
e.options[e.options.length] = newOP;
}
}
</script><input type=button value=ok onclick="window.open('ttt.htm','meizz')">
子窗口:
<select onchange="if(window.name!='')opener.writeParentList(this.value)">
<option>请选择
<option value=aaa>aaa
<option value=bbb>bbb
<option value=ccc>ccc
<option value=ddd>ddd
<option value=eee>eee
</select>
<form name=form1>
<select name=parentList>
<option>请选择
</select>
</form>
<script language=javascript>
function writeParentList(str)
{
if(str=="") return;
if(document.form1.parentList)
{
e = document.form1.parentList;
var newOP=new Option(str, str, true, true);
for(var i=0; i<e.options.length; i++) //不重复
if(e.options[i].value == str) return;
e.options[e.options.length] = newOP;
}
}
</script><input type=button value=ok onclick="window.open('ttt.htm','meizz')">
子窗口:
<select onchange="if(window.name!='')opener.writeParentList(this.value)">
<option>请选择
<option value=aaa>aaa
<option value=bbb>bbb
<option value=ccc>ccc
<option value=ddd>ddd
<option value=eee>eee
</select>
var newOP=new Option(str, str, true, true);
后两个参数什么意思呀