代码在加载或保存时增加了额外的换行符

时间:2018-07-30 09:34:14

标签: jquery sql ajax joomla

这是错误的代码(Chrome控制台的屏幕截图) enter image description here

这应该是这样 enter image description here

我不确定是否是从数据库加载它的代码,即:

<p><?php echo nl2br($row[$x]['body']);?></p>

或保存文本的代码:

jQuery.ajax({
                method: "POST",
                url: "index.php",
                data: { option: "com_ajax", module: "usernotes" , method: "edit", format: "json" , Id: edit_id, body: curBody.replace("", /(\r\n|\n)/g) }

上面的ajax调用的函数将其插入到SQL中,如下所示:

$db->quoteName('body') . ' = ' . $db->quote(nl2br($bodyToUpdate))

我认为我可能会从jQuery获得一些回报。这就是为什么我尝试过:

curBody.replace("", /(\r\n|\n)/g)

1 个答案:

答案 0 :(得分:0)

解决方案是删除nl2br

代码为:

$db->quoteName('body') . ' = ' . $db->quote(nl2br($bodyToUpdate))

应该是:

$db->quoteName('body') . ' = ' . $db->quote($bodyToUpdate)

,然后在CSS中为white-space: pre;添加<p>,例如:

.usernotetext p {
    white-space: pre;
}