【发布时间】:2017-03-17 23:36:36
【问题描述】:
当用户点击提交时,我在文本区域中获取值。然后我把这个值放在页面的其他地方。但是,当我这样做时,它会丢失换行符,使输出非常难看。
这是我正在访问的文本区域:
<textarea id="post-text" class="form-control" rows="3" placeholder="What's up?" required></textarea>
这是访问帖子并将其转录的 JavaScript 代码。
var post = document.createElement('p');
var postText = document.getElementById('post-text').value;
post.append(postText);
var card = document.createElement('div');
card.append(post);
var cardStack = document.getElementById('#card-stack');
cardStack.prepend(card);
当输入类似于:
小组日程:
周二练习 @ 5 楼(晚上 8 点 - 晚上 11 点)
星期四练习 @ 5 楼(晚上 8 点 - 晚上 11 点)
周日练习@(晚上 9 点 - 凌晨 12 点)
输出是:
小组日程:周二练习@5楼(8 pm - 11 pm)周四练习@5th(8 pm - 11 pm)周日练习@(9 pm - 12 am)
那么有没有办法保留换行符?
【问题讨论】:
-
如果您被允许使用 jQuery,这可能会对您有所帮助:copy-from-textarea-to-div-preserving-linebreaks 或者这可能会有所帮助 preserve-line-breaks-in-textarea-input
-
实际上保留了换行符,目标元素只是设置为在显示文本时忽略它们,但如果你检查它,你会看到它们在这里。 Stefano 的回答只是将目标设置为不再忽略它们,这可能是最好的方法。
-
抱歉吹毛求疵,倒数第二行的
getElementById函数在哪里?我假设您在其他地方定义了它,或者您忘记了document。
标签: javascript html