HTML作为文本而不是html附加

时间:2017-05-24 23:21:21

标签: javascript jquery

这是在浏览器中输出文本而不是html标记。 my_detail元素位于服务器端渲染的页面上,我试图通过GTM.javascript追加其他一些html。有一个脑屁,请协助

var $testString = "<h1 class='testing123'>asdasd asd</h1>"
$("#my_detail").append($testString)

2 个答案:

答案 0 :(得分:2)

1st:如果您需要附加html变量,则更新的代码应该有效,因为 .append()会将其参数解析为HTML

&#13;
&#13;
var $testString = "<h1 class='testing123'>asdasd asd</h1>"
$("#my_detail").append($testString);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="my_detail"></div>
&#13;
&#13;
&#13;

第二名:如果您需要将html字符串呈现为代码? ..所以你需要将代码包装在<xmp>

&#13;
&#13;
var $testString = "<h1 class='testing123'>asdasd asd</h1>"
$("#my_detail").append('<xmp>' + $testString + '</xmp>');
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="my_detail"></div>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

如果要附加一些HTML,则必须将其定义为HTML,而不是字符串。

所以这会奏效:

var testHTML = $("<h1>").attr("class","testing123").text("asdasd asd");
$("#my_detail").append(testHTML);