我正在使用内联CKeditor,为了让每个段落引用被视为一个可信的div,所以工具栏随内容移动,我使用javascript setInterval定期通过ajax将内容插入到数据库中。
我用PHP {<1}}替换每个<p>
标记:
<div contenteditable="true"><p>
第一次使用ajax进行更新时,代码工作正常,但在手动刷新时,它会插入额外的if(preg_match('/<p>/', $post)) {
$newpost = str_replace("<p>", "<div contenteditable=\"true\"><p class=\"paragraph\">", $post);
}
else {
$newpost = $post;
}
实施例: 首次刷新它进入
<div contenteditable="true">
第二次刷新时进入
<div contenteditable="true"><p>
第三次刷新它进入
<div contenteditable="true"><div contenteditable="true"><p>
仅在手动页面刷新而不是使用setInterval时才会发生这种情况。
我很确定它与我正在使用的preg_match有关,因为如果我将下面的代码插入数据库并刷新页面,内容就会完全按照原样显示。
<div contenteditable="true"><div contenteditable="true"><div contenteditable="true"><p>
有人能告诉我,我做错了吗?
谢谢!
答案 0 :(得分:0)
我用PHP {<1}}替换每个
<p>
标记:
使用JavaScript!这不是服务器端的任务。请尝试jQuery's wrap或执行the native way。