我正在尝试从数据库中绑定CK Editor中的数据。但它也不正常,数据是获取但不显示,仅在点击Google Chrome中的inspect元素时显示。
HTML
<textarea id="input" name="input"></textarea>
JS
<script>
$(document).ready(function () {
$("#input").ckeditor();
});
function BindData() {
$("#input").val('This is CK Editor Demo');
}
BindData();
</script>
链接Here
答案 0 :(得分:1)
首先,你必须等待DOM准备好,然后你必须等待编辑器准备好,最后你可以绑定你的数据:
// Wait for DOM to be ready.
$( document ).ready( function() {
// Create an instance of the editor.
$( '#input' ).ckeditor( function( textarea ) {
// When the instance is ready, set some data.
$( textarea ).val( 'This is CK Editor Demo!' );
} );
} );
或使用外部方法:
function BindData() {
$( '#input' ).val( 'This is CK Editor Demo!' );
}
// Wait for DOM to be ready.
$( document ).ready( function() {
// Create an instance of the editor.
$( '#input' ).ckeditor( function() {
// When the instance is ready, set some data.
BindData();
} );
} );
阅读official guide以获取新的jQuery适配器(自4.2起)。
答案 1 :(得分:0)
您加载ckeditor并填写textarea后。没办法,ckeditor已加载。一个没有实时更新。你必须改变秩序。
<script>
function BindData() {
$("#input").val('This is CK Editor Demo');
}
BindData();
$(document).ready(function () {
$("#input").ckeditor();
});
</script>
答案 2 :(得分:0)
您可以使用:
CKEDITOR.instances[ckeditorname].setData(yourdata)
在ckeditor实例
之后绑定数据答案 3 :(得分:0)
尝试:
<script>
$(document).ready(function () {
$("#input").ckeditor();
BindData();
});
function BindData() {
CKEDITOR.instances["input"].setData('This is CK Editor Demo');
}
</script>
在ckeditor init之后调用BindData()
函数。