标题:appendChild类型不匹配问题
只看楼主
sdlklhd
Rank: 1
等 级:新手上路
威 望:2
帖 子:345
专家分:0
注 册:2005-12-20
 问题点数:0 回复次数:6 
appendChild类型不匹配问题
我的页面上有两个按纽btn1,btn2.btn1用来生成文本框,btn2将文本框的ID属性的值写入页面中的一个DIV中,但在写入过程中,提示:类型不匹配.
代码如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 <HEAD>
  <TITLE> New Document </TITLE>
  <META NAME="Generator" CONTENT="EditPlus">
  <META NAME="Author" CONTENT="">
  <META NAME="Keywords" CONTENT="">
  <META NAME="Description" CONTENT="">
  <script language="javascript">
    <!--
        var i=0;
        function insertText()
        {
            i+=1;
            var txt=document.createElement("<input type='text' />");
            txt.id="txt"+i;
            document.body.childNodes[0].appendChild(txt);
        }
        function listName()
        {

            var m=document.all["f1"].childNodes.length;
            for(var j=0;j<=m;j++)
            {
                if(document.all["f1"].childNodes[j].type=="text")
                {
                    var txt=document.all["f1"].childNodes[j].id;
                    document.body.childNodes[0].appendChild(txt);
                }
            }

        }
    //-->
  </script>
 </HEAD>

 <BODY>
  <form name="f1">
    <input type="button" name="btn1" value="btn1" hideFocus="true" onClick="insertText()" /><br>
    <input type="button" name="btn2" value="btn2" onClick="listName()" />
    
  </form>
  <div id="div1" style="border:5 solid red;width:100;height:200;position:relative;" contentEditable="true"></div>
 </BODY>
</HTML>
搜索更多相关主题的帖子: appendChild META 类型 CONTENT 
2008-02-19 15:51
supertm
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-9-1
得分:0 
var txt
for ...
{
    txt = txt + document.all["f1"].childNodes[j].id;
}
document.getElementById('div1').innerHTML = txt

appendChild添加的是元素节点而不是属性
2008-02-19 16:07
lmhllr
Rank: 8Rank: 8
等 级:贵宾
威 望:44
帖 子:1504
专家分:42
注 册:2005-5-12
得分:0 
#2说的是,而且这个程序 IE only
2008-02-19 16:12
sdlklhd
Rank: 1
等 级:新手上路
威 望:2
帖 子:345
专家分:0
注 册:2005-12-20
得分:0 
还是不行啊.

2008-02-19 16:30
sdlklhd
Rank: 1
等 级:新手上路
威 望:2
帖 子:345
专家分:0
注 册:2005-12-20
得分:0 
提示:对象不支持此操作.
代码;
        function listName()
        {

            var m=document.all["f1"].childNodes.length;
            for(var j=0;j<m;j++)
            {
                if(document.all["f1"].childNodes[j].type=="text")
                {
                    var txt=document.all["f1"].childNodes[j].id;
                    document.getElementById("div1").innerHTML(txt);
                }
            }

        }
顺便问一下:你的var txt及txt=txt+是什么意思?

2008-02-19 16:31
supertm
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-9-1
得分:0 
document.getElementById("div1").innerHTML = txt;
不是innerHTML(txt);
-- 你的var txt及txt=txt+是什么意思?
没什么意思,我以为你要把所有符合的节点id都连在一起呢
2008-02-19 16:40
sdlklhd
Rank: 1
等 级:新手上路
威 望:2
帖 子:345
专家分:0
注 册:2005-12-20
得分:0 
解决了.
感谢.

2008-02-19 17:07



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-200343-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.037032 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved