为什么当我试图在html上的文本区域内显示文本时,它会在一行中显示所有内容
Why when I try to display the text inside a textarea on html it display eveything in one line?
我有以下代码:
<body>
<form>
<textarea id="textfield"></textarea>
<input type="button" onclick="func1()" value="Post">
</form>
<p id="para"></p>
</body>
当我在textarea中键入所有特殊标签<a>,<br>
等时,当我在<p>
中显示它们时,它们会被忽略。我键入的所有内容都会显示在一行上,甚至我按下回车键或使用<br>
都无关紧要,textarea似乎在取用html标签,并将它们变成一个简单的文本。
这是我用来在html:中显示文本区域的功能
function func1()
{
document.getElementById("para").innerHTML=document.getElementById("textfield").innerHTML;
}
如何从文本区域获取文本并正常显示在屏幕上(不是一行)。如何为不知道如何使用标签的用户修改文本区域?按下时,应将简单返回转换为<br
首先,对于文本区域,应该使用value
,而不是innerHTML
。像这样。。。
document.getElementById("para").innerHTML=document.getElementById("textfield").value;
现在,针对单行问题。在文本区域中,新行由''n分隔。在你的divs中不要工作。因此,您必须将它们替换为<br>
标签。所以重写你的代码片段。。。
document.getElementById("para").innerHTML=document.getElementById("textfield").value.replace(/'r'n|'r|'n/g,"<br />");
文本区域中的文本不是html。它只是文本,包含规则的换行符"'n"
。要显示它们,您需要将文本包含在pre
标记中,或者将"'n"
替换为<br>
。
我会做后者,因为如果文本中没有中断,pre
根本不会中断,所以您将有一条长行和一个滚动条。
<textarea>
不接受HTML并对其进行解释。如果您希望用户能够在不知道tag names
的情况下修改文本,我认为您正在寻找的是富文本编辑器
相关文章:
- 为什么在页面上单击的先前链接的文本显示在 AJAX 请求中
- JavaScript NaN错误,输入文本显示为NaN
- 关于socket.io实时文本显示的问题
- 如何使用javascript使文本显示在文本字段中
- 在它们之间切换时,jQuery 文本显示在活动文本下方
- 使用 ajax 乱码文本显示图像
- 带有文本显示js功能的图像映射 - 某些部分不显示
- 来自 Ajax 请求的文本显示不正确
- 如何使用 JavaScript 使文本显示
- 是否可以将元素内部的文本显示在 ::在 css 之前
- on更改文本框的文本显示在另一个文本框上
- 在文本显示在Scroll上之前在页面上隐藏文本的问题
- 使用带文本显示的Jquery切换文本
- 如何使文本显示速度变慢
- 如何将图片添加到点击计数器文本显示<图像><点击量>
- 文本显示有延迟
- 根据在另一个文本框中输入的文本显示文本框中的文本
- 如何从点击文本显示文件浏览器,并在悬停文本时将鼠标光标更改为指针
- 使文本显示为几行可点击的线条
- 如何使文本显示