javascript |用换行符保存 textarea 值
Posted
技术标签:
【中文标题】javascript |用换行符保存 textarea 值【英文标题】:javascript | save textarea value with line breaks 【发布时间】:2012-10-05 11:29:38 【问题描述】:我有一个代码,它将多个 textarea 值保存在一个文本文件中。但是,它不显示我保存后指示的换行符。它仅标识手动放置在文本区域中的换行符 w/c。下面是代码。请帮忙。
<script>
var TestVar = new Array();
var i = 0;
function save()
TestVar[i] = document.getElementById("text1").value + "\n" + document.getElementById("text2").value;
mydoc = document.open();
mydoc.write(TestVar);
mydoc.execCommand("saveAs",true,"TicketID.txt");
mydoc.close();
</script>
</head>
<body>
<form id=formtest>
<textarea name="textarea" id="text1"></textarea>
<textarea name="textarea" id="text2"></textarea>
<input type="button" value="save" onclick="save()">
</form>
</body>
【问题讨论】:
保存这些数据的服务器端代码是什么? 如果您使用 php,在将文本框的数据保存在表格中时,您应该考虑使用“nl2br”PHP 函数。您以后可以使用以下命令转换表中的任何“”:str_replace("", "\n", $textboxValue); 嗨。不使用任何服务器端脚本,因为它只会在本地保存文件。 【参考方案1】:text = text.replace(/\n\r?/g, '<br />');
文本是来自 textarea 的值。
【讨论】:
当我尝试这个 '' 被打印在文本区域。没有换行符。【参考方案2】:问题源于换行符 (\n
) 与 html <br />
标记不同。
试试这个:
var text = document.forms[0].txt.value;
text = text.replace(/\n\r?/g, '<br />');
编辑,试试这个作为js:
var text = document.forms[0].txt.value;
if (text === true) text = text.replace(/\n\r?/g, '<br />');
var TestVar = new Array(i);
var i = 0;
function save()
TestVar[i] = document.getElementById("text1").value + "/n" + document.getElementById("text2").value;
mydoc = document.open();
mydoc.write(TestVar);
mydoc.execCommand("saveAs",true,"TicketID.txt");
mydoc.close();
【讨论】:
试过了,它给了我下面的错误。网页错误详细信息消息:'document.forms.0.txt' 为空或不是对象行:4 字符:1 代码:0 网页错误详情消息:'document.forms.0.txt' 为空或不是对象行:4 字符:1 代码:0 谢谢,但不确定我是否做得正确。仍然收到相同的错误消息。 var text = document.forms[0].txt.value; function replaceText() if (text == true) text = text.replace(/\n\r?/g, '');以上是关于javascript |用换行符保存 textarea 值的主要内容,如果未能解决你的问题,请参考以下文章
为什么我不能用Typescript替换换行符Char(Javascript)
用javascript填充textarea,添加换行符[重复]