使用kindeditor时,取不到textarea里面的值。
编辑器的JS代码:
var editor;
KindEditor.ready(function(K) {
editor = K.create(‘textarea[name="replycontents"]‘, {
allowFileManager : true ,
//设置编辑器为简单模式
items : [
'fontname', 'fontsize', '|', 'forecolor', 'hilitecolor', 'bold', 'italic', 'underline',
'removeformat', '|', 'justifyleft', 'justifycenter', 'justifyright', 'insertorderedlist',
'insertunorderedlist', '|', 'emoticons', 'image', 'link'],
//下面这行代码就是关键的所在,当失去焦点时执行 this.sync();
afterBlur:function(){this.sync();}
});
});
那么这个 this.sync(); 函数是干嘛的呢?简单的说:这个函数就是同步KindEditor的值到textarea文本框。
不知道这个问题是偶尔发生,还是普遍存在啊..
————————————————————————————————-
原 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();
});
红色部分调整为以下编码
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文本域。