我的网站上有一个新闻栏目,通过ajax进行内联编辑。我写了一些文本,它被存储并显示出来。
但由于某些原因,他们称之为没有新行或换行符。我尝试了很多东西。显示换行符的唯一方法是手动按“Enter”键。否则,wordwrap和nl2br都没有帮助。
echo ' <span class="subheader"> <strong>'.$array["title"].
'</strong> </span> <br /> '.
'<div style="margin: 0px 0px 0px 10px; width="20px"">'.
' <div id="quickDeleteNewsItem"> '.
'<div style="width:20px;" id="post_message_'.
$array['id'].'" style="display: inline;">'.
$array["content"].'</div> </div> </div> ';
答案 0 :(得分:0)
为了回答这个问题,我们需要看一些代码。
当您预计换行时,echo
会使用哪些代码?
根据现在发布的信息,我只能说:如果您在查看<div>
/ <p>
中的文字时没有看到换行符,则需要使用换行符({{ 1}})或将新闻部分中的每段文字放在块级元素中,例如<br />
标记。
答案 1 :(得分:0)
在通过ajax发布时,尝试使用encodeURIcomponent对内容进行编码。
content = encodeURIComponent(content);
答案 2 :(得分:0)
我认为我们需要查看更多代码。我可以想到数据至少保存在三个位置:
和两种类型的换行符:
听起来你在textarea中看到了软中断,但是当使用javascript(或使用php和数据库将文本移动到div)时却没有。如果是这样,那么几乎可以肯定包含div太宽 - 使用firebug(或类似的)来检查div并确保它被设置在正确的宽度。
答案 3 :(得分:-1)
用html制动器替换线制动器
str_replace("\n","<br />\n",$data)