1

私が抱えている問題を解決するには、あなたの助けが必要です。私はこのコードを持っています:

<div id="div1" >
    <div id="edit1">
       hello
       <input type="button" id="b1" onclick="aaa()"/>
    </div>
</div>

内部 div (id=edit1) に挿入して、生成した別の新しい div を使用したいと考えています。

私は同様のコードを試しましたが、実行されていません:

js:
function aaa()
{
   var elem = createDivLine();
   var el1 = document.getElementById("div1");
   var el2 = el1.getElementById("edit1");
   el2.appendChild(elem);
}

function createDivLine()
{
   var tempDiv1 = document.createElement("div");
   tempDiv1.innerHTML = "Sam";
   return tempDiv1;
}

結果は次のようになります。

<div id="div1" >
    <div id="edit1">
       hello
       <input type="button" id="b1" onclick="createDivTable()"/>
       <div>"Sam"</div>
    </div>
</div>

JSFiddle: http://jsfiddle.net/KknXF/

4

2 に答える 2

5

ID は一意であるため、要素の子を ID で取得しようとしても無効です。

次の行を削除します。

var el1 = document.getElementById('div1');

そして、次の行を次のように変更します。

var el2 = document.getElementById('edit1');

取り返しのつかないほど (その言葉をつづることはできません...) 壊れた HTML があり、おそらく変更できない場合は、次のことを試してください。

var el2 = document.querySelector("#div1 #edit1");
于 2013-04-18T13:47:12.027 に答える
0

そのはず

function aaa() {
   var elem = createDivLine();
   var el2 = document.getElementById("edit1");
   el2.appendChild(elem);
}

デモ:フィドル

于 2013-04-18T13:48:35.087 に答える