您好,伙伴们...我遇到一个问题,对您来说可能非常简单,但对我来说却很困惑...可能看起来像一个常见问题,但我还没有发现任何类似的情况我的...我有一个网站,用户可以在该网站上向帖子添加评论...现在我想要的是,当用户放置多个空格时,它应该转换为单个空格,并且应该使用多个新行来完成相同的操作...除此之外,我还想 trim 掉字符串开头和结尾处的宽空格和新行...查看示例输入屏幕截图的链接(图像)
这是我的代码:
$(document).on('keydown','.addComment',function(e){
var id = $(this).attr('id').match(/\d+/);
var p_id = Number(id);
var comment_box = '#comment_box_'+id;
var content = $(comment_box).html();
content = content.replace(/\n/g, '<br>'); //replacing new line with <br>
if (e.which === 13 && e.shiftKey !== true) {
if (content.length > 0 ) {
$.ajax({
type : 'POST',
url : 'update.php',
data: ({
content: content,
id: p_id,
act: "add_cmnt"
}),
success : function()
{
update_ca("comment_area_"+id, true);
}
}); //End of Ajax
}
return false;
}
});
这是 html 输入的代码:
<p contenteditable="true" class=" addComment" id="comment_box_***"></p>
最佳答案
您可以尝试以下代码:
content = content.replace(/\n+/gm, '\n').replace(/\u0020+/gm, ' ').replace(/\n/g, '<br>');
致以诚挚的问候。
关于javascript - 如何在js中从开头和结尾 trim 空格和换行并用单行替换多个换行和宽空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42565173/