郁闷的问题,请各位高手帮忙!

dearbook112 2004-11-08 04:29:09
<INPUT style="Z-INDEX: 102; LEFT: 360px; POSITION: absolute; TOP: 320px" type="button"
value="getElementsByName" onclick="dd()"><DIV id="dd" style="BORDER-RIGHT: #ff9966 1px solid; BORDER-TOP: #ff9966 1px solid; Z-INDEX: 103; LEFT: 80px; BORDER-LEFT: #ff9966 1px solid; WIDTH: 640px; BORDER-BOTTOM: #ff9966 1px solid; POSITION: absolute; TOP: 96px; HEIGHT: 200px"
ms_positioning="GridLayout"></DIV>
<INPUT style="Z-INDEX: 104; LEFT: 288px; POSITION: absolute; TOP: 320px" type="button"
value="create" onclick="jj()">
<INPUT style="Z-INDEX: 105; LEFT: 432px; POSITION: absolute; TOP: 320px" type="button"
value="查看HTML" onclick="alert(document.body.innerHTML)">
<script language="javascript">
function dd()
{
alert(document.getElementsByName("tr")[0])
}
function jj()
{
var i="tr";
var ii = document.createElement("DIV");
ii.setAttribute("name","tr");
ii.style.setAttribute("border","1 solid #000000");
ii.style.setAttribute("position","absolute");
ii.style.setAttribute("width","50");
ii.style.setAttribute("height","50");
document.all.dd.appendChild(ii);
}
</script>
为什么getElementsByName取不到create的DIV?但是查看HTML却可以看见已经建立了name="tr"的DIV。。。请帮忙解决,谢谢
...全文
51 4 打赏 收藏 举报
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
JK_10000 2004-11-09
  • 打赏
  • 举报
回复
ii.setAttribute("name","tr");

改成以下就行。--->>>

ii.setAttribute("id","tr");


--------------
对于没有name-attribute的对象,设其id为id1,
我们也可以通过document.getElementsByName("id1")得到它

对于拥有name-attribute的对象,设其id为id1,name为name1
我们既可以通过document.getElementsByName("name1")得到它
也可以通过document.getElementsByName("id1")得到它


示例:

<input id=aaaa name=bbbb><br>
<input type=button value="getElementById('aaaa')" onclick="alert(getElementById('aaaa').outerHTML);"><br>
<input type=button value="getElementById('bbbb')" onclick="alert(getElementById('bbbb').outerHTML);"><br>
<input type=button value="getElementsByName('aaaa')" onclick="alert(getElementsByName('aaaa')[0].outerHTML);"><br>
<input type=button value="getElementsByName('bbbb')" onclick="alert(getElementsByName('bbbb')[0].outerHTML);"><br>


dearbook112 2004-11-08
  • 打赏
  • 举报
回复
谢谢指点,俺明白了
meizz 2004-11-08
  • 打赏
  • 举报
回复
getElementsByName 是取不到DIV对象的, 因为系统默认DIV没有 name 这个属性
拥有 name 属性的控件有
表单元素(form input textarea select)
框架元素(iframe frame window)
锚点(<a name="mm">)
JK_10000 2004-11-08
  • 打赏
  • 举报
回复
ii.setAttribute("name","tr");

---->>>

这一句执行的结果并没有将div的name设为tr
相关推荐
发帖
JavaScript

8.7w+

社区成员

Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
帖子事件
创建了帖子
2004-11-08 04:29
社区公告
暂无公告