2013-08-18 47 views
0

在jQuery中我没有使用noob,我想在html中添加很多标签,我不知道这一点。如何使用jQuery在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); 

请指导我。

+1

这是什么?你能告诉你为什么包括所有这些divs? –

回答

-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); 
+0

你怎么能做到这一点。语法是正确的。你没有在控制台中得到任何错误。但是没有什么可以解决的。 –

+0

这是英文的第一句话吗? :\ – nzifnab

2

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


可能的解决方案:

1)的concat连续字符串值是在新的符合+操作者(注' +在每一行的结束和'在下一行
[的开始优点:更易读]
[缺点:连接字符串时性能降低]

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)写在同一行字符串没有任何换行符
[优势:好一点的表现则连接字符串]
[缺点:不易阅读对于长琴弦]

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>'; 



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

相关问题