我正在用这样的jQuery创建一些元素 -
var div1 = $('<div />', {text: "Specials of <b>the searched text</b>"}).attr({"class": "spcl-thmb-hdr"});
div1.appendTo(li2); // appending to a <li /> tag
但是当它们加载时,它们只是不解析<b />
标记。并打印出这样的东西 -
<div class="spcl-thmb-hdr">Specials of <b>the searched text</b></div>
如何解析text
参数中的标记?
答案 0 :(得分:1)
您需要使用html
代替text
才能将字符串视为HTML,否则将对其进行编码。
您传递到$
的地图可以包含属性,您也可以替换attr
来电,如下所示:
$('<div />', {
html: "Specials of <b>the searched text</b>",
"class": "spcl-thmb-hdr"
});
从jQuery 1.4开始,
jQuery()
的第二个参数可以接受一个映射,该映射由可以传递给.attr()
方法的属性的超集组成。此外,可以传入任何event type,并且可以调用以下jQuery方法:val
,css
,html
,text
,{{3} },data
,width
或height
。必须在地图中引用名称"class"
,因为它是一个JavaScript保留字,并且"className"
无法使用,因为它不是正确的属性名称。