我目前正在使用textarea,用户可以在其中提交输入。我使用php nl2br
将任何新行转换为<br>
,如下所示:
$review_desc = nl2br($this->_getParam('comment'));
但是现在我在用户编辑文本时遇到问题,因为我收到的内容如下:
test1<br />
test2<br />
test3<br />
test4<br />
当用户在textarea中编辑其内容时,它会在最后添加新的<br/>
。如何防止这种情况?另外建议是否有其他替换textarea的形式,它可以检测超链接等?谢谢
答案 0 :(得分:0)
您可以将textarea的内容存储在用户提供的数据库中;所以不用打电话给nl2br。
然后,只需从数据库中检索相同的文本并想要打印到网页,就调用nl2br。
如果您希望用户在textarea中再次编辑它,请从数据库中检索当前内容,这次不要调用nl2br。
答案 1 :(得分:0)
如果您使用“\ n”保留文本,则只需在textarea中插入文本,但如果您使用<br />
保留文本,则在textarea中插入文本之前,应替换“{1}}” n“,例如<br />
或尝试使用此页http://php.net/manual/en/function.nl2br.php中的内容,评论中有许多函数用于替换{n
$text = str_replace("<br />","\n",$text);