CKEDITOR.instance [x] .setData在IE中不起作用

时间:2011-10-13 10:18:38

标签: javascript jquery ckeditor

好的,我在Web应用程序中使用CKEditor。我需要做的一件事是在文本区域中设置文本。我一直在使用这条线:

CKEDITOR.instances.setData(html);

...其中html是包含HTML的变量。

这适用于Chrome& Firefox,但在Internet Explorer或Safari中根本不存在。

任何人都可以提供有关原因或建议解决方法的见解吗?

非常感谢提前! : - )

1 个答案:

答案 0 :(得分:0)

确保从传入的字符串中删除所有换行符setData().如果不这样做,则抛出异常,并显示有关未终止字符串的消息。 CKEditor使用的换行符是\n的UNIX样式(换句话说,不是DOS版本:\r\n)。

新行显然抛弃了解析器,使它认为它是声明的结尾。

另请注意,如果您再次拨打getData()来获取该值,CKEditor会将换行符和标签放回去。如果你需要使用setData().设置该值,则需要再次将它们剥离。我使用这样的正则表达式去除换行符(以及标签只是为了完整性):

[\n\t]+

另外请确保如果使用正则表达式去除它们,则需要确保模式匹配与\n字符匹配(在.NET中称为“单行”模式,但我不知道不知道你在用什么。

相关问题