KindEditor下,JQuery submit方法获取不到textarea内容的解决方案
最近碰到个小问题,如题,在富文本编辑器KindEditor下,用JQuery触发submit函数提交表单时,textarea的值获取不到,想了好半天没找到原因,去官网看了下,还真有解决方案。
KindEditor常见问题
如官网所说,我们可以在提交前主动调用editor.sync()
方法,将内容同步到隐藏的原textarea中。
如下代码:
for (i in KindEditor.instances) {
KindEditor.instances[i].sync()
}
KindEditor.instances
是当前页面的所有editor对象,这样可以把所有的textarea都进行同步。
最新版本可以直接调用K.sync(expr)
注意点
有一点需要注意的是调用了sync方法后,在源代码里查看原textarea的内容也是没有更新的。
还有就是网上大多数的解决方案都是在初始化参数中添加如下代码:
K.create('#id', {
afterBlur: function () {
this.sync();
}
});
这种方法也是可以的,但是我的场景在提交的时候同步即可,并不需要实时同步,多种方案可以酌情选择。
(完)
- 本文作者:吴泽辉
- 本文链接:https://mutex.top/posts/c7f02e04/
- 发表日期:2019年8月9日
- 版权声明:本文章为原创,采用《知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议》进行许可