很抱歉再次发布此信息,但我在互联网上找不到任何有用的信息。
我正在尝试创建一个日历。我正在使用 symfony 3 和 fullcalendar创建它。
所以在我的 twig
类中我创建了一个变量:
{% set fff = "" %}
在 fff
变量中,我添加了一些文本,例如 {start: "2017-05-17", title: "Take my mom from airport"},
然后我将 fff
变量传递给 JS:
<script>
var allTasks = {{ fff|json_encode()|raw }};
</script>
然后如果我想添加这个任务 {start: "2017-05-17", title: "Take my mom from airport"},
, allTasks 变量 , 到日历。所以我创建了一个函数:
$(function(){
$('#calendar').fullCalendar({
events: [
//there I should add tasks
//f.e. {start: "2017-05-17", title: "Take my mom from airport"},
//this code adds a task into my calendar
],
});
});
当我像示例中那样输入代码时,它工作正常,但是当我尝试执行如下操作时:
$(function(){
$('#calendar').fullCalendar({
events: [
allTasks, //this variable is equal to "{start: "2017-05-17", title: "Take my mom from airport"},"
],
});
});
这对我没有任何帮助。甚至日历也从我的网站上消失了。
所以问题是我做错了什么? allTasks var 打印出 {start: "2017-05-17", title: "Take my mom from airport"},
。我已经对其进行了测试,但是当我尝试在我的函数中使用它时它不起作用。
错误日志:
[2017-05-15 11:40:36] request.ERROR: Uncaught PHP Exception Symfony\Component\HttpKernel\Exception\NotFoundHttpException: "找不到路由 "GET/[%7Bstart:'2017-05-17 ',title:'Take%20my%20mom%20from%20airport'%7D]"(from "http://127.0.0.1:8000/home")"at/home/david/task_manager/var/cache/dev/classes.php 行 3497 {"exception":"[object] (Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException(code: 0): No route found for\"GET/[%7Bstart:'2017-05 -17',title:'Take%20my%20mom%20from%20airport'%7D]\"(from\"http://127.0.0.1:8000/home\") at/home/david/task_manager/var/缓存/dev/classes.php:3497,Symfony\\Component\\Routing\\Exception\\ResourceNotFoundException(代码:0):在/home/david/task_manager/var/cache/dev/appDevDebugProjectContainerUrlMatcher.php:162)” } []
最佳答案
你可以试试这个:
<script>
var allTasks = '{{ fff|json_encode()|raw }}'; // make sure that fff return {'start': '2017-05-17', 'title': 'Take my mom from airport'}
</script>
$(function(){
$('#calendar').fullCalendar({
events: [
JSON.parse(allTasks)
],
});
});
关于javascript - 如何使用 'javascript variable as a text' ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43973780/