Javascript 如何显示<;输入类型='';文本'&燃气轮机;不在jquery中创建文本框?
我有一个评论框(textarea),用户在其中键入内容,当他点击“输入”时,该内容会自动显示在“评论部分”。现在,当用户点击submit时,我正在执行以下代码Javascript 如何显示<;输入类型='';文本'&燃气轮机;不在jquery中创建文本框?,javascript,jquery,html,Javascript,Jquery,Html,我有一个评论框(textarea),用户在其中键入内容,当他点击“输入”时,该内容会自动显示在“评论部分”。现在,当用户点击submit时,我正在执行以下代码 var comment = $("#commentBox").val(); var commentSection = $("#commentSection"); comment.appendTo(commentSection); 通过上述代码,用户键入的注释将动态显示在注释部分。这很好,但当用户键入以下内容时 <input typ
var comment = $("#commentBox").val();
var commentSection = $("#commentSection");
comment.appendTo(commentSection);
通过上述代码,用户键入的注释将动态显示在注释部分
。这很好,但当用户键入以下内容时
<input type='text'>
在注释框中,然后在注释部分中创建一个文本框。那么,有没有一种方法我不能让这种事情发生?
提前感谢。您必须将字符串转换为实体。定义此功能:
function htmlencode(str) {
return str.replace(/[&<>"']/g, function($0) {
return "&" + {"&":"amp", "<":"lt", ">":"gt", '"':"quot", "'":"#39"}[$0] + ";";
});
}
一种方法是将数据附加为 大概是这样的:
var comment = $("#commentBox").val();
var commentSection = $("#commentSection");
commentSection.text(comment);
编辑:要附加到注释的现有部分,请替换:
commentSection.text(comment);
与:
试试这个
div.insertAdjacentHTML( 'beforeend', comment);
你可以用
var commentText = $("#commentBox").text();
但这不会清除字符串上的html标记,另外,您可以使用函数来完成此操作
function RemoveHTMLTags(vals) {
var regX = /(<([^>]+)>)/ig;
var html = vals;
return (html.replace(regX, ""));
}
请在“输入清理”上进行谷歌搜索。你想达到什么目的?你可以使用
encodeURI(comment)
这样做。但是当添加第二条注释时,这会覆盖框中的任何内容。@RoryMcCrossan——挑剔,挑剔commentSection.text(commentSection.text()+comment)
@RoryMcCrossan my bad,我没有完全理解这个问题,我已经更新了我的anwser+1以简化您的答案,但是chris97ong给出的表达式也有助于我的其他用途。
var commentText = $("#commentBox").text();
function RemoveHTMLTags(vals) {
var regX = /(<([^>]+)>)/ig;
var html = vals;
return (html.replace(regX, ""));
}
var finalComment = RemoveHTMLTags(commentText);