我在我的项目中使用ckeditor,它将用户的输入转换为html,如下所示:
<p>summary:</p>
<ul>
<li>test</li>
<li>test2</li>
<li>test3</li>
</ul>
当在 jquery 中获取此数据时,如下所示:
var title = "{{$p->title}}";
var start = "{{$p->start_date}}";
var end = "{{$p->end_date}}";
var summary = '{{$p->summary}}';
我收到以下错误:
Uncaught SyntaxError: Unexpected token ILLEGAL
在摘要变量中,通过检查元素,如下:
var summary = '<ul>
<li>test</li>
<li>tes2</li>
<li>test3</li>
</ul>
';
我知道这听起来可能是一个笨拙的错误,但我不明白为什么它不起作用。
最佳答案
JavaScript 字符串文字不能包含未转义的文字换行符。
如果要将 PHP 变量转换为 JavaScript 字符串,请使用 json_encode,不要盲目 echo 出来。
$js_safe = array(
title => json_encode($p->title),
# etc
);
然后:
var title = {{$js_safe->title}};
请注意,json_encode
将为您添加引号。
关于javascript - 意外的 token 非法 - javascript 中的 ckeditor 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27804222/