经客户反映,一铭全系列产品在火狐浏览器、谷歌浏览器下后台KindEditor在线编辑器无法获取textarea值,同时也包括在IE10中存在同样的问题。
现将解决办法发布如下:
原 KindEditor 官方指定调用参数如下,在IE浏览器6.0-7.0都是没有问题的
KindEditor.ready(function(K) { var editor = K.create('textarea[name="content"]', { cssPath : '样式路径', uploadJson : '动态上传处理程序文件', fileManagerJson : '已上传文件管理程序文件', allowFileManager : true, afterCreate : function() { var self = this; K.ctrl(document, 13, function() { self.sync(); K('form[name=myform]')[0].submit(); }); K.ctrl(self.edit.doc, 13, function() { self.sync(); K('form[name=myform]')[0].submit(); }); } }); prettyPrint(); });
调整为以下编码(第7-18行)新(第7-15行)
KindEditor.ready(function(K) { var editor = K.create('textarea[id="content"]', { cssPath : '样式路径', uploadJson : '动态上传处理程序文件', fileManagerJson : '已上传文件管理程序文件', allowFileManager : true, afterBlur : function() { this.sync(); K.ctrl(document, 13, function() { K('form[name=myform]')[0].submit(); }); K.ctrl(this.edit.doc, 13, function() { K('form[name=myform]')[0].submit(); }); } }); prettyPrint(); });
意思是当失去焦点时执行 this.sync();
关于 this.sync() 函数简单的说就是同步KindEditor的值到textarea文本域。