我有编辑内容使用CKEditor *(FCKEditor的V3)自定义编写的CMS内容。我还使用插件在基于AJAX的提交之前检查所有字段是否存在错误。我正在使用serialize()函数将数据传递给PHP后端。使用jQuery抓住从CKEditor的的iframe
问题是,serialize设法正确抓取所有字段,除了在CKEditor中键入的实际内容。像所有其他所见即所得编辑器一样,这个编辑器也将iframe覆盖在现有的文本框上。而序列化会忽略iframe,并只看内容的文本框,当然,它没有找到,因此返回一个空白的内容主体。
我的这种方法是创建一个钩子上的CKEditor的的onchange事件,并同时更新文本框(CKEDITOR.instances.[textboxname].getData()
返回的内容)或在编辑器中所做的任何更改一些其他的隐藏字段。
但是,由于CKEditor仍处于测试阶段,严重缺乏文档,我无法找到一个合适的API调用,使我能够做到这一点。
有没有人有关于如何去做这个?
我已经想出了尽可能多的从iframe中获取内容: $('#cke_contents_body iframe').contents()。find('body').html()...最接近直接可寻址的元素,是一个带有id的td,'cke_contents_body'。 CKEditor用这个td包装了iframe。 – 2009-05-29 03:49:09
还是要去..一种通过挂接到CKEditor的变化事件来自动更新带有数据的文本框的方法。有任何想法吗?任何人? – 2009-05-29 03:54:20
新的CKEditor版本已经解决了这个问题 – Ivan 2011-07-06 18:09:22