问题的解决方法,下面是摘自官网的一段说明文档:
KindEditor的可视化操作在新创建的iframe上执行,代码模式下的textarea框也是新创建的,所以最后提交前需要将HTML数据设置到原来的textarea,editor.sync()函数会完成这个动作。
KindEditor在默认情况下自动寻找textarea所属的form元素,找到form后onsubmit事件里添加editor.sync()函数,所以用form方式提交数据,不需要手动执行editor.sync()函数。
然后我又仔细看了看附带的实例,终于找到了问题所在,以下代码基本上就是官方给出的源码,就是增加了一个事件,然后一切搞定,终于可以在后台获取到文本编辑器的值了
<script type="text/javascript" language="javascript"> KindEditor.ready(function (K) { var editor1 = K.create('#NewsContent', { cssPath: 'kindeditor/plugins/code/prettify.css', uploadJson: 'http://www.cnblogs.com/Handler/Upload.ashx', fileManagerJson: 'http://www.cnblogs.com/Handler/FileManager.ashx', allowFileManager: true, afterCreate: function () { var self = this; K.ctrl(document, 13, function () { self.sync(); K('form[name=formCreateDocument]')[0].submit(); }); K.ctrl(self.edit.doc, 13, function () { self.sync(); K('form[name=formCreateDocument]')[0].submit(); }); $('#lbtnSubmit').click(function () {//重点在这 self.sync(); }); } }); prettyPrint(); }); </script>