如何显示字符串中的html标签?

时间:2019-03-29 04:57:30

标签: javascript html

有一个要求,即从后端检索一些包含HTML标签的消息,以及如何正确显示HTML标签而不显示原始标签字符。

如下所示的消息(以引号显示):

"This is a <a href="#">link</a>, for a test."

右显示:

“这是link,用于测试。”

4 个答案:

答案 0 :(得分:0)

似乎您希望将字符串显示为html。您只需要将其添加为innerHTML。不是innerTexttextContent

显示错误

let str = `This is a <a href="#">link</a>, for a test.`
document.body.innerText += str;

右显示

let str = `This is a <a href="#">link</a>, for a test.`
document.body.innerHTML += str;

如果要在字符串周围使用引号,请使用Template Strings

let str = `"This is a <a href="#">link</a>, for a test."`
document.body.innerHTML += str;

答案 1 :(得分:0)

您可以为此使用innerHTML

示例:

document.getElementById(id).innerHTML  = yourTextWithHtml

答案 2 :(得分:0)

您可以使用document.write()呈现HTML

document.write(`This is a <a href="#">link</a>, for a test.`);`

但是要追加现有的HTML字符串,您需要获取要在其下插入HTML字符串的节点/标签的ID。

有两种方法可以实现此目的:

使用DOM-

var tag_id = document.getElementById('tagid'); 
var newNode = document.createElement('p');
newNode.appendChild(document.createTextNode(`This is a <a href="#">link</a>, for a test.`)); 
node.appendChild(newNode);

使用innerHTML-

var tag_id = document.getElementById('tagid'); 
tag_id.innerHTML(`This is a <a href="#">link</a>, for a test.`);

您还可以使用jQuery html解析器执行以下操作:

var html =  `This is a <a href="#">link</a>, for a test.`;
html = $.parseHTML( html);
$("#tagId").append(html);

我希望这会对您有所帮助。谢谢

答案 3 :(得分:0)

转义-

您应该转义在字符串中找到的所有引号。将\放在它们前面可以逃脱。

console.log("This is my string with quotes \" \" ")