jQuery:如何将HTML添加到动态创建的div中

时间:2013-12-12 12:41:25

标签: jquery html dynamically-generated

我正在使用以下函数动态创建一个div,到目前为止工作正常。

如何在我说“text:userName”的div中添加HTML? 具体来说,我想在userName前面添加一个Bootstrap图标(<i class="icon-sign-blank"></i>),但是当我尝试这只是将HTML添加为文本而不是将其格式化为图标。 (正确安装了Bootstrap。)

function addUser() 
{
var userName = $('#userName').val();
var userElementId = getId(userName);

$('<div/>', {
    text: userName,
    id: userElementId,
    onmouseover: "function1('" + userName + "', this)",
    onmouseout: "function2()",
}).addClass('user').appendTo('#parentDiv');

if (nameCtrl) {
    nameCtrl.GetStatus(userName, 'users');
}

$('#userName').val('');
}

非常感谢任何帮助,蒂姆

3 个答案:

答案 0 :(得分:1)

您正在设置text:属性。尝试使用您想要的html设置html:属性。

答案 1 :(得分:1)

text:更改为html:并在用户名前添加图标。

$('<div/>', {
    html: '<i class="icon-sign-blank"></i> '+userName,
    id: userElementId,
    onmouseover: "function1('" + userName + "', this)",
    onmouseout: "function2()",
}).addClass('user').appendTo('#parentDiv');

答案 2 :(得分:0)

尝试这样的事情

var div = '<div><i class="icon-sign-blank"></i>'+userName+'</div>';
$(div, {
    id: userElementId,
    onmouseover: "function1('" + userName + "', this)",
    onmouseout: "function2()",
}).addClass('user').appendTo('#parentDiv');