[英]How to ignore HTML tags in innerHTML attribute?
I'm making a messenger and my messages don't ignore HTML tags because I simply past a text from input in innerHTML of message.我正在制作一个信使,我的消息不会忽略 HTML 标签,因为我只是在消息的 innerHTML 中传递了来自输入的文本。 My code:
我的代码:
function Message(sender) {
...
this["text"] = "";
...
this.addText = function (text) {
this["text"] = text;
};
...
};
And here I display it:我在这里展示它:
...
var chatMessageText = document.createElement("p");
chatMessageText.innerHTML = message["text"];
...
What can I do for ignoring HTML tags in message["text"]?忽略 message["text"] 中的 HTML 标签该怎么办?
UpdateNode#innerText
property(or Node#textContent
property).更新
Node#innerText
属性(或Node#textContent
属性)。
chatMessageText.innerText = message["text"];
Refer : Difference between text content vs inner text参考: 文本内容与内部文本的区别
You can't.你不能。 The point of
innerHTML
is that you give it HTML and it interprets it as HTML. innerHTML
是你给它 HTML,它把它解释为 HTML。
You could escape all the special characters, but the easier solution is to not use innerHTML
.您可以转义所有特殊字符,但更简单的解决方案是不使用
innerHTML
。
var chatMessagePara = document.createElement("p");
var chatMessageText = document.createTextNode(message["text"]);
chatMessagePara.appendChild(chatMessageText)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.