CKEDITOR中的setData问题

时间:2014-08-15 13:48:22

标签: ckeditor

我正在使用CKEDITOR来获取用户的输入,我在数据库中保存生成的HTML,我在保存到数据库之前使用以下php方法修改我的html:

trim(htmlspecialchars(Generated HTML from CKEDITOR))

出于某种原因,我必须从数据库中提取html并使用setData将其设置为CKEDITOR,我使用以下代码, <script>CKEDITOR.replace('desc2').setData(\''.htmlspecialchars_decode($data6['html']).'\', function(){this.checkDirty();});</script>

问题:当html非常基本且简单而没有换行符或图像时,它工作正常但是当我在CKEDITOR中放置换行符和图像时,它会显示exeption SyntaxError:unterminated string literal。请重播以解决此问题。

2 个答案:

答案 0 :(得分:0)

通过$data6['html']运行htmlspecialchars_decode变量时发生的转义序列,加上字符串连接可能会导致您的问题。

为了解决这个问题,请尝试在这种情况下远离字符串连接。 (我不知道这段代码是否会完全适合你,但你明白了这一点:

$ckEditorContent = htmlspecialchars_decode($data6['html']);
CKEDITOR.replace('desc2').setData(htmlspecialchars_decode($ckEditorContent), function(){this.checkDirty();});

答案 1 :(得分:0)

感谢所有回复,我的问题通过以下代码解决了。

<script>CKEDITOR.replace('desc2').setData(json_encode($data6['html']), function(){this.checkDirty();});</script>