使用javascript将一个div插入到另一个div

使用javascript将一个div插入到另一个div,javascript,html,Javascript,Html,我正在插入一个div到另一个div,我确实是在这篇文章的帮助下完成的 . 这是我的代码,运行良好。 此函数由元素调用 <asp:LinkButton ID="LinkButton1" OnClientClick="generateDiv(); return false; "runat="server" Text="Create New Group" CausesValidation="False"></asp:LinkButton> function generate

我正在插入一个div到另一个div,我确实是在这篇文章的帮助下完成的 . 这是我的代码,运行良好。 此函数由元素调用

<asp:LinkButton ID="LinkButton1" OnClientClick="generateDiv(); return false;
"runat="server" 
Text="Create New Group" CausesValidation="False"></asp:LinkButton>

function generateDiv() {
          var grup = document.createElement('div');
          grup.setAttribute('class', 'genDiv');
          grup.setAttribute('id', 'genId');
          this.grp.appendChild(grup);
   }

以下两者之间的区别是什么:

document.getElementById("#grp").appendChild(grup)
document.getElementById("#grp").appendChild(grup).

第一个将失败,因为没有任何元素具有
id
“#grp”(您没有使用
,这是“下一件事是
id
”的CSS表达式)。使用
document.getElementById
,您不需要输入
#
,因为它只需要一个
id
,而不是CSS选择器,因此:

document.getElementById("grp").appendChild(grup);
关于
将由调用
generateDiv
的方式决定如果在
grp
div
上调用它作为事件处理程序,那么
将(可能)引用
grp
元素,您不必再次查找它。如果以其他方式调用它,那么
这个
可能是另一种方式,您需要通过
getElementById
查找
grp
div

编辑:根据您稍后发布的代码:

…这不仅仅是因为IE8(我认为,可能是IE7)及其以下版本在使用
setAttribute
html时得到了一个错误的

<div id="box"></div>

js

var e=$('');
$('框')。附加(e);

如何调用
generateDiv
呢?区别取决于它是这样调用的。。这是很快很好的信息,谢谢。我在之前的问题中对此感到疑惑,但现在没事了。
document.getElementById("grp").appendChild(grup);
<asp:LinkButton ID="LinkButton1" OnClientClick="generateDiv(); return false;" runat="server" Text="Create New Group" CausesValidation="False"></asp:LinkButton>
function generateDiv() {
     var grup = document.createElement('div');
     grup.className = 'genDiv';
     grup.id = 'genId';
     document.getElementById("grp").appendChild(grup);
}
<div id="box"></div>
var e = $('<div></div>');
$('#box').append(e);