ajax 调用后,CKEditor 在 IE11 中不可编辑
CKEditor not editable in IE11 after ajax call
示例:
如果是第一次加载页面,CKEditor是可以正常工作的,可以编辑编辑器的值。点击调用以下函数的按钮 "ajax" 后(光标必须位于编辑器字段中):
function ajax_call() {
var html = "<textarea id=\"textarea\"><p>test 1</p><p>test 2</p><p>test 3</p></textarea><script type='text/javascript'>jQuery(document).ready(function() { ckEditor('textarea'); });<\/script>";
$.post("/echo/html/", { html: html }, function(data){
jQuery('#target').html(data);
});
}
无法在 IE11 中单击文本来编辑值。单击文本以外或文本左侧会再次启用编辑器。
在 IE 中启动 CKEDITOR 刹车编辑器后,看起来像是创建了新的文本区域。虽然我只是尝试直接在 CKEDITOR 实例上设置数据并且它工作正常,而不是创建新的 textarea 标签。
function ajax_call() {
var html = "<p>test 4</p><p>test 5</p><p>test 6</p>";
$.post("/echo/html/", { html: html }, function(data){
//jQuery('#target').html(data); <-- Removed from original
CKEDITOR.instances['textarea'].setData(data)// <-- Added
});
}
function ckEditor(id) {
CKEDITOR.replace(id, {
language : 'de',
});
}
jQuery(document).ready(function() {
ckEditor('textarea');
});
这是工作示例:
http://jsfiddle.net/2wq86gqs/15/
示例:
如果是第一次加载页面,CKEditor是可以正常工作的,可以编辑编辑器的值。点击调用以下函数的按钮 "ajax" 后(光标必须位于编辑器字段中):
function ajax_call() {
var html = "<textarea id=\"textarea\"><p>test 1</p><p>test 2</p><p>test 3</p></textarea><script type='text/javascript'>jQuery(document).ready(function() { ckEditor('textarea'); });<\/script>";
$.post("/echo/html/", { html: html }, function(data){
jQuery('#target').html(data);
});
}
无法在 IE11 中单击文本来编辑值。单击文本以外或文本左侧会再次启用编辑器。
在 IE 中启动 CKEDITOR 刹车编辑器后,看起来像是创建了新的文本区域。虽然我只是尝试直接在 CKEDITOR 实例上设置数据并且它工作正常,而不是创建新的 textarea 标签。
function ajax_call() {
var html = "<p>test 4</p><p>test 5</p><p>test 6</p>";
$.post("/echo/html/", { html: html }, function(data){
//jQuery('#target').html(data); <-- Removed from original
CKEDITOR.instances['textarea'].setData(data)// <-- Added
});
}
function ckEditor(id) {
CKEDITOR.replace(id, {
language : 'de',
});
}
jQuery(document).ready(function() {
ckEditor('textarea');
});
这是工作示例: http://jsfiddle.net/2wq86gqs/15/