无法使 CKEditor InsertHTML 在 IE 8 上工作
Posted
技术标签:
【中文标题】无法使 CKEditor InsertHTML 在 IE 8 上工作【英文标题】:Cant make CKEditor InsertHTML work on IE 8 【发布时间】:2012-06-14 15:06:59 【问题描述】:这是我准备启动 ckeditor 的 textarea:
<textarea name="Message" id="RFMessage lol" rows="4" class="ckeditor" onkeydown="if(this.value.length>=1024)this.value=this.value.substring(0,1023);">
</textarea>
比我有这个html:
<textarea id="message" class="message hide" >WORLDWIDE,Any</textarea>
我需要做的是让JS在.message div上工作以摆脱“,Any”,然后将仅“WORLDWIDE”的干净值放入#RFMessage div
由于我不知道如何在 ckeditor 中运行自定义 JS,我从这里使用他们的预定义 API:http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.editor.html
我使用 InsertHTML 来获取值并插入它。
这是我的整个 JS:
<script>
$(".message").each(function()
$(this).html($(this).html().replace(/,Any/g,""));
$(this).html($(this).html().replace(/Any,/g,""));
);
</script>
<script>
CKEDITOR.on( 'instanceReady', function( ev )
var oEditor = CKEDITOR.instances.RFMessage;
var value = document.getElementById('message').value;
oEditor.insertHtml(value);
);
</script>
当然,CKEditor 必须加载整个内容。
在 Chrome 和 Firefox 上一切正常,但在 IE8 上不起作用
我根据这个 CKEditor 使用他们的 API 的示例构建了脚本:http://nightly.ckeditor.com/7493/_samples/api.html
任何想法可能导致这在 IE8 上不起作用?我还尝试在他们的论坛上搜索任何与 IE8 相关的错误,但找不到任何错误。也许我只是在脚本中遗漏了一些东西?
谢谢
【问题讨论】:
【参考方案1】:在处理编辑器内容时,您应该使用 CKEDITOR 的 getData 和 setData 方法。这些方法标准化了编辑器中的数据访问。
【讨论】:
以上是关于无法使 CKEditor InsertHTML 在 IE 8 上工作的主要内容,如果未能解决你的问题,请参考以下文章
python-django中使用ckeditor富文本,后台没问题,前台为啥不好使?