我正在将fullcalendar与qtip结合使用,用于基于事件的网站(php),并且我运行良好。
我正在为我想做出的改变而挣扎。
在我的记录集中,我正在检索一个位置 - 这是来自 html 编辑器的自由文本。
这对于基本文本很好,我正在添加斜杠以转义任何文本中的撇号等。
但是,如果文本中有换行符,页面将不会呈现,并且在调试js时我得到错误unexpected token ILLEGAL
我已经尝试strip_tags功能,它似乎删除了有问题的
标签,但页面仍然无法呈现,只要我删除 br 标签,它就可以正常工作。
我正在从我的记录集中构建一个字符串并按如下方式显示它......
<?php $eventlist = "";?>
<?php do { ?>
<?php $eventlist = $eventlist."{title: '".addslashes($row_rsevents['EventName'])."', start: '". $row_rsevents['EventDate']."', starttime: '". $row_rsevents['StartTime']."', endtime: '". $row_rsevents['EndTime']."', dateF: '". $row_rsevents['EventDateF']."', className: '". $row_rsevents['CSSTag']."', host: '".addslashes($row_rsevents['HostDescription'])."', eventtype: '". $row_rsevents['EventTypeDescription']."', url: '"."event_detail.php?EventID=". $row_rsevents['EventID']."', description: '". addslashes(strip_tags($row_rsevents['Location']))."'},"; ?>
<?php } while ($row_rsevents = mysql_fetch_assoc($rsevents)); ?>
<?php $eventlist = rtrim($eventlist,',');//remove the trainling comma ?>
...events: [
<?php echo $eventlist; ?>
],
很难说出最终的 json 编码数组是什么样子的,但你不需要手动进行编码; 只需构建您的事件数组(就像您在 fetch
循环中所做的那样),然后echo json_encode($evarray)
哪个应该处理您在标题、描述等中输入的任何字符。
您还可以添加自定义属性 ev.line1、ev.line2 并响应eventRender(ev, elt...)
替换事件标题,如下所示:elt.find(".fc-event-title").html(ev.line1+"<br/>"+ev.line2);
,如果您希望br
在那里。