gpt4 book ai didi

javascript - 为什么当我尝试在 html 的文本区域内显示文本时,它会在一行中显示所有内容?

转载 作者:行者123 更新时间:2023-11-30 13:00:40 25 4
gpt4 key购买 nike

我有以下代码:

 <body> 
<form>
<textarea id="textfield"></textarea>
<input type="button" onclick="func1()" value="Post">
</form>
<p id="para"></p>
</body>

当我在文本区域中输入所有特殊标签时 <a>,<br>当我在 <p> 中显示它们时,等会被忽略我输入的所有内容都显示在一行上,我按下回车键或使用 <br> 都没有关系。 , textarea 似乎正在使用 html 标签并将它们变成一个简单的文本。

这是我用来在html中显示文本区域的函数:

function func1()
{
document.getElementById("para").innerHTML=document.getElementById("textfield").innerHTML;
}

如何从 textarea 中获取文本并正常显示在屏幕上(不是一行)。如何为不知道如何使用标签的用户修改文本区域?按简单回车时应翻译为 <br

最佳答案

首先,对于文本区域,您应该使用 value而不是 innerHTML .像这样...

document.getElementById("para").innerHTML=document.getElementById("textfield").value;

现在,对于单行问题。在 textarea 中,新行由\n 分隔。在你的 div 中\n 不起作用。所以你必须用 <br> 替换它们标签。所以重写你的代码片段......

document.getElementById("para").innerHTML=document.getElementById("textfield").value.replace(/\r\n|\r|\n/g,"<br />");

关于javascript - 为什么当我尝试在 html 的文本区域内显示文本时,它会在一行中显示所有内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17472119/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com