100分请高手或斑竹帮忙看看

bcsky 2005-02-20 05:43:27
<!--
1.html
-->

<SCRIPT language="JavaScript">
function openwindow()
{
window.open("2.html","","width=300,height=300")

}

</script>

<input type="button" onclick="openwindow();" value="原窗口">
<td width=144 >已选字段列表
<form name="list">
<select name=fieldName style="WIDTH: 140px" size="15" multiple >

</select>
<input type="text" name="aa" >
</form>
</td>
-----------------
<!--
2.html
-->
<SCRIPT language="JavaScript">

function addloc2()
{
window.opener.document.list.fieldName.options[window.opener.document.list.fieldName.options.length] = new Option("dd","ff", 0, 0);
//document.list.fieldName.options[document.list.fieldName.options.length] = new Option("dd","ff", 0, 0);
//window.opener.document.list.aa.value="dd";
//window.close();
}

</script>

<input type="button" value="添加" onclick="addloc2();">
<form name="list">
<select name=fieldName style="WIDTH: 140px" size="15" multiple >
</select>
</form>

---------
从1.html点击弹出2.html后
在2.html点击添加按钮 往1.html的fieldName添加option提示“找不到对象”
但2.html往本页面添加option就可以

比较急 大家帮忙看看
...全文
138 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
vivianfdlpw 2005-02-20
  • 打赏
  • 举报
回复
up
ice_berg16 2005-02-20
  • 打赏
  • 举报
回复
window.opener.document.list.fieldName.options[window.opener.document.list.fieldName.options.length] = new Option("dd","ff", 0, 0);

这句的问题,
我的理解如下:
new Option相当于生成的新对象是在2.htm页面内有效,而你相当于在父页面添加了一个2.htm里面的对象,这样应该是不允许的,
而我的做法是在父页面中生成一个对象,然后添加到列表中,这样相当于只在本页面操作,是允许的。
bcsky 2005-02-20
  • 打赏
  • 举报
回复
请问 ice_berg16(寻梦的稻草人)

我的写法是什么地方错了
可否解释一下?
ice_berg16 2005-02-20
  • 打赏
  • 举报
回复
function addloc2()
{
var o = opener.document.createElement("OPTION");
o.value = "dd";
o.text = "ff";
window.opener.document.list.fieldName.options.add(o);

}
bcsky 2005-02-20
  • 打赏
  • 举报
回复
是提示"window.opener.document"为空或者不是对象

楼上的能说具体点吗
myvicy 2005-02-20
  • 打赏
  • 举报
回复
对象找错了啊。

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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