Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript DIV中文本中的新行_Javascript_Jquery - Fatal编程技术网

Javascript DIV中文本中的新行

Javascript DIV中文本中的新行,javascript,jquery,Javascript,Jquery,我有点困惑,因为当我在div中插入mysql中存储的文本时,我使用以下句子插入文本: <div class="menssge_holder"><?php echo str_replace("\n", "</p>", $conversation[$i]['message']); ?></div> 这句话很好用,但当用户在文本区域输入新消息并按下send按钮时,我将该文本放在div_保持架中,“\n”不会生效 我应该在javascript或jQu

我有点困惑,因为当我在div中插入mysql中存储的文本时,我使用以下句子插入文本:

<div class="menssge_holder"><?php echo str_replace("\n", "</p>", $conversation[$i]['message']); ?></div>

这句话很好用,但当用户在文本区域输入新消息并按下send按钮时,我将该文本放在div_保持架中,“\n”不会生效

我应该在javascript或jQuery中使用什么等价物


谢谢。

这将生成不正确的html。如果要用新行替换
\n
,您将有一堆没有
,尝试

而不是我的@MarcB上面建议的

,您可能还想尝试将
\r\n

替换为

,这样会起作用。另外,如果您使用的是
p
,那么以这种方式为
p
提供CSS将很有帮助:

p {margin: 0 0 15px;}

在您的情况下,您需要以下内容:

$('#post')。单击(函数(){
var copyThis=$('#textarea').val().replace(/\n/ig,
); $('#result').html(copyThis); });
请尝试使用
“\r\n”
。不是每个人都只使用换行符。如果他用@Korcholis替换,他仍然会缺少标记,这在几乎所有浏览器中都不会是问题。一个
标记不能包含在另一个
标记中。所以,不用担心浏览器隐式放置

。查看Firebug的源代码,比如
HiHelloHow
。是的,我知道。然而,我不知道IE在这种情况下的表现。是的,我(悲伤地)不得不关注过去:(好吧,这是完全令人惊讶的。+1对你@Praveen Kumar,可能+1对微软,如果他们故意这么做=)然而,实现所有w3c规则是浏览器开发者的事。在这种情况下,微软做得很好,坚持标准。在php工程中,我指的是javascript,将文本区域中的文本插入到div中。@domoindal添加了您需要的内容,希望能有所帮助。
<div class="menssge_holder"><?php echo str_replace(/\n/ig, "<br />", $conversation[$i]['message']); ?></div>
$('#post').click(function(){
  
  var copyThis = $('#textarea').val().replace(/\n/ig, '<br />');  
  $('#result').html( copyThis );
  
});