如下列舉KindEditor4X幾處問題及解決方法: php
PS:標紅處爲重點。 css
1. 使用A標籤提交表單: json
<form name="frm" action="demo.php" method="post">
詳細 內容:<textarea name="content" style="width:800px;height:400px;visibility:hidden;"></textarea><br>
<a href="#" onclick="Javascript:frm.submit()">提交</a>
</form> 編輯器
把上面A標籤代碼改爲下列便可, 佈局
提交前須要執行editor.sync(),editor是K.create返回的對象。 post
<a href="#" onclick="Javascript:editor.sync();frm.submit();">提交</a> 學習
注意:提交表單的命名(標藍色處)要一致。 this
2.檢查form標籤放在table和tr之間,若是是這樣的話form自動綁定事件可能有問題。解決方法是,提交時請執行一下editor.sync()。 spa
具體實例以下: code
<link rel="stylesheet" href="kindeditor/themes/default/default.css" />
<link rel="stylesheet" href="kindeditor/plugins/code/prettify.css" />
<script charset="utf-8" src="kindeditor/kindeditor.js"></script>
<script charset="utf-8" src="kindeditor/lang/zh_CN.js"></script>
<script charset="utf-8" src="kindeditor/plugins/code/prettify.js"></script>
<script>
KindEditor.ready(function(K) {
var editor = K.create('#content', {
cssPath : 'kindeditor/plugins/code/prettify.css',
uploadJson : 'kindeditor/php/upload_json.php',
fileManagerJson : 'kindeditor/php/file_manager_json.php',
allowFileManager : true,
afterCreate : function() {
var self = this;
K.ctrl(document, 13, function() {
self.sync();
K('form[name=form1]')[0].submit();
});
K.ctrl(self.edit.doc, 13, function() {
self.sync();
K('form[name=form1]')[0].submit();
});
}
});
K('#form1').bind('submit', function() {
editor.sync();
});
});
</script>
<tr class="editTr">
<td class="editLeftTd">詳細內容</td>
<td class="editRightTd">
<textarea id="content" name="content" style="width:800px;height:300px; visibility:hidden;"><?php echo $content; ?></textarea>
</td>
</tr>
以上是本人使用到的Js與樣式,能夠根據實際操做相應增減,注意樣式與Js引用路徑問題是否正確,
上書綠色處爲文本域ID與Name對應操做,藍色處爲表單名稱命名,紫色爲表單ID命名,紅色處的操做是爲了給解決表單佈局的BUG所作的處理,給ID爲#form1綁定editor.sync();操做。
發佈此文章是爲了給你們提供一種快速的解決方式,官方上也有此解決問題的方式,但都是隻字片語,此問題折騰了我幾個小時,不但願你們也在此問題上被阻擋。
若有不明白處,能夠給本人留言,本人願與你們共學習,共進步。