KindEditor得不到textarea值的解决方法

来源:互联网 发布:二级vb语言程序设计 编辑:程序博客网 时间:2024/05/22 05:07
认真找下原因。
首先描述下我这边KindEditor的错误现象:
1、在IE8/FF下均得不到值;
2、当点击KindEditor的全拼按钮切换到全屏模式输入时,再返回正常模式,可以得到值;
3、我用的是jQuery的点击事件提交表单的,<a onclick=”$(‘form’).submit();”>提交</a>,无法得到值;
4、直接用表单的提交按钮<input type=”submit” value=”提交” />可以得到值。

下面以 KindEditor 4.x 版本为例说明,先贴上正确的代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<script type=”text/javascript”>
KindEditor.ready(function(K){
K.create(‘textarea[name="content"]‘, {
themeType: ‘simple’,
resizeType: 1,
uploadJson: ‘common/KEditor/upload_json.php’,
fileManagerJson: ‘common/KEditor/file_manager_json.php’,
allowFileManager: true,
        //经测试,下面这行代码可有可无,不影响获取textarea的值
        //afterCreate: function(){this.sync();}
        //下面这行代码就是关键的所在,当失去焦点时执行 this.sync();
        afterBlur: function(){this.sync();}
});
});
</script>

相关说明:
从上面的代码可以看到,解决方法在于最后一行代码,afterBlur: function(){this.sync();},当失去焦点时执行 this.sync();
那么这个 this.sync(); 函数是干嘛的呢?简单的说:这个函数就是同步KindEditor的值到textarea文本框。
官方解释:
sync()
将编辑器的内容设置到原来的textarea控件里。
参数: 无
返回: KEditor

转载:http://chzx-lcj.blog.163.com/blog/static/43864236201261822550868/

原创粉丝点击