gpt4 book ai didi

javascript - CKeditor contenteditable preg_match

转载 作者:行者123 更新时间:2023-11-28 08:36:18 25 4
gpt4 key购买 nike

我正在使用内联CKeditor,为了将每个段落引用视为可内容编辑的div,以便工具栏随内容移动,我使用javascript setInterval 通过ajax 定期将内容插入数据库。

我正在替换每个 <p>标记为 <div contenteditable="true"><p>使用 PHP:

if(preg_match('/<p>/', $post)) {
$newpost = str_replace("<p>", "<div contenteditable=\"true\"><p class=\"paragraph\">", $post);
}
else {
$newpost = $post;
}

第一次使用ajax更新时代码工作正常,但在手动刷新时它将插入额外的<div contenteditable="true">

示例:第一次刷新时会进入

<div contenteditable="true"><p>

第二次刷新时进入

<div contenteditable="true"><div contenteditable="true"><p>

第三次刷新时进入

<div contenteditable="true"><div contenteditable="true"><div contenteditable="true"><p>

这只发生在手动页面刷新时,而不是使用 setInterval 时。

我很确定它与我正在使用的 preg_match 有关,因为如果我将下面的代码插入数据库并刷新页面,内容就会完全按照应有的方式显示。

<div contenteditable="true"><p>Lorum Ipsum</p></div>

谁能告诉我我做错了什么吗?

谢谢!

最佳答案

I'm replacing every <p> tag with <div contenteditable="true"><p> with PHP:

使用JavaScript!这不是服务器端的任务。试试jQuery's wrap或者这样做the native way .

关于javascript - CKeditor contenteditable preg_match,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21126514/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com