如何使用JQuery获取CKEditor的内容?
我正在使用 CKEditor。我使用页面方法通过 ajax 保存表单值。
但CKEditor值的内容不能保存到表中。
我不回发页面。
我能为此做些什么呢?
I'm using CKEditor. I am saving the form values with ajax using page methods.
But the content of CKEditor value cannot be saving into the table.
I dont postback the page.
What can I do for that?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(15)
如果您没有对编辑器的引用,如 Aeon 的答案所示,您还可以使用以下形式:
如果您不使用已使用 JavaScriptencodeURIComponent 方法对其进行编码的库保存数据,而是手动执行此操作,您必须记住使用encodeURIComponent 对正在发送的数据进行正确编码。
因此,您应该执行以下操作:
有关更多信息: https://ckeditor.com/文档/ckeditor4/latest/guide/dev_savedata.html
If you don't hold a reference to the editor, as in Aeon's answer, you can also use the form:
If you do not save your data with a library that already encodes it by using the JavaScript encodeURIComponent method, but do it manually instead, you will have to remember to use encodeURIComponent to properly encode the data that is being sent.
So you should do below:
For more info: https://ckeditor.com/docs/ckeditor4/latest/guide/dev_savedata.html
将
YourInstanceName
替换为您的实例名称,您将获得所需的结果。Replace
YourInstanceName
with the name of your instance and you will get the desired results.我遇到了
getData()
每次都无法工作的问题,尤其是在处理实时 ajax 时。可以通过运行来解决这个问题:
然后使用 jquery 从文本区域获取值。
I was having issues with the
getData()
not working every time especially when dealing with live ajax.Was able to get around it by running:
Then use jquery to get the value from the textarea.
现在 jQuery 适配器 存在,这个答案需要更新:
假设您发起了使用
$('.ckeditor').ckeditor(opt)
编辑器,然后使用$('.ckeditor').val()
获取值Now that jQuery adapter exists, this answer needs to be updated:
Say you initiated the editor with
$('.ckeditor').ckeditor(opt)
then you get the value with$('.ckeditor').val()
要获取ckeditor的数据,您需要获取ckeditor实例
HTML代码:
Javascript:
To get data of ckeditor, you need to get ckeditor instance
HTML code:
Javascript:
感谢约翰·木兰。这是我在 Symfony 项目中使用的 postForm 函数,现在可以使用 CK Editor 了。
Thanks to John Magnolia. This is my postForm function that I am using in my Symfony projects and it is fine now to work with CK Editor.
您可以像这样检索数据:
参考:
http://docs.ckeditor.com/#!/guide/dev_savedata
you can retreive data like this :
reference :
http://docs.ckeditor.com/#!/guide/dev_savedata
版本4.8.0
version 4.8.0
使用 Pure Vanilla Javascript / Jquery 或任何 javascript 库:
如果您在下面的文本区域中加载了 Ckeditor:
那么您可以在文本区域中获取内容,如下所示:
Using Pure Vanilla Javascript / Jquery or in any javascript library :
If you have Ckeditor loaded in below text-area:
Then you can get content inside textarea as below:
我通过在工具箱中添加 DLL 来添加 ckEditor。
html代码:
用于获取它的数据。
jQuery:
i add ckEditor by adding DLL in toolBox.
html code:
for get data of it.
jquery:
我认为这会更好,只需通过 jquery 序列化你的表单并欢呼......
在 javascript 部分
I think it will be better, just serialize your form by jquery and cheers...
and In javascript section
版本
4.6
version
4.6
获取编辑器内文本或其长度的简单方法:)
Easy way to get the text inside of the editor or the length of it :)
首先,您应该在页面中包含 ckeditor 和 jquery 连接器脚本,
然后创建一个文本
区域,将 ckeditor 附加到文本区域,在我的项目中,我使用类似这样的内容:
在提交时使用以下方式获取内容:
就是这样! :)
First of all you should include ckeditor and jquery connector script in your page,
then create a textarea
attach ckeditor to the text area, in my project I use something like this:
on submit get the content using:
That's it! :)
在实例上使用 CKEditor.editor.getData() 调用。也就是说:
HTML
JS for CKEditor 4.0.x
JS for CKEditor 3.6.x
use the CKEditor.editor.getData() call on the instance. That is to say:
HTML
JS for CKEditor 4.0.x
JS for CKEditor 3.6.x