Javascript 使用ckeditor内联编辑后无法保存数据
我正在尝试构建一个文章系统,在这个系统中,可以使用ckeditor内联编辑content div。内容div的数量是可变的,因此一篇文章有两个div:Javascript 使用ckeditor内联编辑后无法保存数据,javascript,php,jquery,ajax,ckeditor,Javascript,Php,Jquery,Ajax,Ckeditor,我正在尝试构建一个文章系统,在这个系统中,可以使用ckeditor内联编辑content div。内容div的数量是可变的,因此一篇文章有两个div: <div id="content_11439" contenteditable="true">Click to edit.</div> <div id="content_11440" contenteditable="true">Click to edit.</div> 单击进行编辑。 单击以进行
<div id="content_11439" contenteditable="true">Click to edit.</div>
<div id="content_11440" contenteditable="true">Click to edit.</div>
单击进行编辑。
单击以进行编辑。
现在我已经浏览了论坛,并尝试将一些答案整合到我的解决方案中,以便将文本保存到我的数据库中。内联编辑部分可以工作,ckeditor显示,我可以编辑,但似乎我的代码没有被发送到php文件,当我单击页面上的其他地方并且ckeditor关闭时,应该保存它
以下代码来自这些论坛:
<script type="template" data-sample="1">
CKEDITOR.disableAutoInline = true;
$("div[contenteditable='true']" ).each(function( index ) {
var content_id = $(this).attr('id');
CKEDITOR.inline( content_id, {
on: {
blur: function( event ) {
var data = event.editor.getData();
var request = jQuery.ajax({
url: "http://www.xxxxxx/saveTextDetails.php",
type: "POST",
data: {
content : data,
content_id : content_id
},
dataType: "html"
});
}
}
} );
});
CKEDITOR.disableAutoInline=true;
$(“div[contenteditable='true'])。每个(函数(索引){
var content_id=$(this.attr('id');
CKEDITOR.inline(内容\u id{
关于:{
模糊:功能(事件){
var data=event.editor.getData();
var request=jQuery.ajax({
url:“http://www.xxxxxx/saveTextDetails.php",
类型:“POST”,
数据:{
内容:数据,,
content\u id:content\u id
},
数据类型:“html”
});
}
}
} );
});
Jquery已加载,我在控制台中没有收到任何错误,但我也没有收到任何post请求,而我确实在不同的页面上执行了相同的操作,在单击保存按钮时将文本保存在输入表单中
感谢您的帮助。您的问题是
标记内的data sample=“1”
,这导致该标记内的脚本无法运行(这意味着divs自动获得了ckeditor,并通过ckeditor.inline(content\u id
)获得了ckeditor
选中此项:
单击以进行编辑。
单击以进行编辑。
CKEDITOR.disableAutoInline=true;
$(“div[contenteditable='true'])。每个(函数(索引){
var content_id=$(this.attr('id');
CKEDITOR.inline(内容\u id{
关于:{
模糊:功能(事件){
var data=event.editor.getData();
警报(“发送:”+数据)
/*
var request=jQuery.ajax({
url:“http://www.xxxxxx/saveTextDetails.php",
类型:“POST”,
数据:{
内容:数据,,
content\u id:content\u id
},
数据类型:“html”
});
*/
}
}
} );
});
非常感谢@dekel此脚本几乎可以正常工作。单击字段(而不是第一个字段)时,我收到此ckeditor错误:“编辑器实例“xxxx”已附加到提供的元素”.有什么线索吗?@simo我写这个答案已经很久了,你能提供一个问题的工作示例吗?JSFIDLE会很好。你的问题是代码在页面中的位置。你需要确保在加载ckeditor脚本之前加载此代码。以下是更新:注意javascript配置中的更改-加载无包装在
中。我明天会看一看。再次感谢您指出这一点!