如何从window.prompt()返回保留换行符的文本?

时间:2013-10-28 13:21:28

标签: javascript string formatting

我正在论坛上创建一个选项,通过一个按钮包含外部文本,该按钮将格式化为textarea。我通过复制粘贴到提示文本,但字符串作为一个大墙文本返回,换行符消失了。反正有没有保留它们,还是实际复制文本的问题?

这是我到目前为止所做的:

function createExText(textbox) {
    var extext = window.prompt('Enter external text:','');
    var formattedextext = '[extext]'+ extext +'[/extext]';
    insertAtCaret(textbox, formattedextext);
}

1 个答案:

答案 0 :(得分:3)

我不知道允许多行内容的prompt的任何浏览器实现。你可以用里面的textarea创建一个自定义模态实现来模拟它。

正如@RGraham评论的那样,如果您将外部文本粘贴到其中,某些浏览器(例如Google Chrome)实际上会保留换行符,但它只显示在对话框内的一行中。我不会坚持使用这个解决方案,因为它不是用户友好的,似乎不能跨浏览器工作。