kindeditor-4.1.10在线编辑器的使用[多个]
<script type="text/javascript" charset="utf-8" src="../../Editor/kindeditor-4.1.10/kindeditor.js"></script> <script type="text/javascript" charset="utf-8" src="../../Editor/kindeditor-4.1.10/lang/zh_CN.js"></script>
KindEditor.ready(function (K) { window.editor1 = K.create('#taACCORDINGRESON', {afterBlur: function () { editor1.sync(); }}); window.editor2 = K.create('#taREMARKS', {afterBlur: function () { editor2.sync(); }}); }); var options = { cssPath: '/css/index.css', filterMode: true }; var editor1 = K.create('textarea[name="ACCORDINGRESON"]', options); var editor2 = K.create('textarea[name="REMARKS"]', options);
<textarea id="taACCORDINGRESON" name="ACCORDINGRESON" style="width: 100%; height: 300px;"> @Model.PricingSuper.ACCORDINGRESON </textarea>
<textarea id="taREMARKS" name="REMARKS" style="width: 93.63%; height: 500px;"> @Model.CostSupervisionReport.REMARKS </textarea>
(注:不加红色部分之前无法调用MVC的ActionResult方法,原因是此文本框内部采用的是Ajax异步提交,如果没有在提交表单时同步数据,将取不到值,无法触发ActionResult事件,所以需要在提交之前先通过{afterBlur: function () { editor1.sync(); }}同步数据,标红部分网上解释是:
KindEditor的可视化操作在新创建的iframe上执行,代码模式下的textarea框也是新创建的,所以最后提交前需要执行 sync() 将HTML数据设置到原来的textarea。
KindEditor在默认情况下自动寻找textarea所属的form元素,找到form后onsubmit事件里添加editor.sync()函数,所以用form方式提交数据,不需要手动执行editor.sync()函数。
// 将编辑器的HTML数据同步到textarea
editor.sync();
地址:http://www.kindsoft.net/docs/editor.html#sync;
http://kindeditor.net/docs/qna.html#textareavalue)