如何使用jQuery在html中将许多标签附加在一起

时间:2013-08-18 06:15:54

标签: jquery html

我在jQuery中的noob,我想在我的html中添加许多标签,我不知道。

这是我的jQuery代码,我收到错误:

var msg = "mamaly"
var addmsg = 
    '<li class="me dark-gray massage">
        <div class="content"><span class="type-text">' + msg + '</span></div>
        <div class="in-border"></div>
        <div class="l-arrow"></div>
        <div class="status failed" style="display:block;">
            <span class="status-text">Sending Failed</span>
        </div>
    </li>';
$('#timeline ul').append(addmsg);

请指导我。

2 个答案:

答案 0 :(得分:2)

在javascript中如果你在新行中写字符串,那么它不被认为是一个连续的字符串。这是您在声明addmsg变量时犯的错误。


可能的解决方案:

1)+运算符换成新行的连续字符串值(每行末尾注意' +,下一行开始'线
[优势:更具可读性]
[缺点:连接字符串时性能受到影响]

var addmsg = 
    '<li class="me dark-gray massage">' +
        '<div class="content"><span class="type-text">' + msg + '</span></div>' +
        '<div class="in-border"></div>' +
        '<div class="l-arrow"></div>' +
        '<div class="status failed" style="display:block;">' +
            '<span class="status-text">Sending Failed</span>' +
        '</div>' +
    '</li>';

OR

2)将您的字符串写在同一行,没有任何换行符
[ Advantage :比串联字符串更好的性能]
[缺点:长字符串的可读性较差]

var addmsg = '<li class="me dark-gray massage"><div class="content"><span class="type-text">' + msg + '</span></div><div class="in-border"></div><div class="l-arrow"></div><div class="status failed" style="display:block;"><span class="status-text">Sending Failed</span></div></li>';



其余代码(即第一行和最后一行)将保持不变。
希望这有用!!

答案 1 :(得分:-1)

我的朋友这是正确的代码而不是你。你应该写这个代码的串联

像这样:

var msg = "mamaly"
var addmsg = '<li class="me dark-gray massage"><div class="content"><span class="type-text">' + msg + '</span></div><div class="in-border"></div><div class="l-arrow"></div><div class="status failed" style="display:block;"><span class="status-text">Sending Failed</span></div></li>';
$('#timeline ul').append(addmsg);