我正在尝试在fullcalendar(http://arshaw.com/fullcalendar/docs/)标题的右侧添加几个自定义按钮。
我正在使用angular.element添加如下按钮:
var calendarHeaderRight = angular.element(".fc-header-right");
if (calendarHeaderRight)
calendarHeaderRight.html('<div><a href="#" ng-click="toggleCalendarList()" class="btn btn-sm btn-info">Calendar</a><a href="#" ng-click="toggleCalendarList()" class="btn btn-sm btn-success">List </a></div>');
按钮会附加到日历并显示。问题是当我点击按钮时没有发生任何事情。
所以问题是,我如何追加可以点击的元素?
感谢
托马斯
答案 0 :(得分:5)
var element = $compile(angular.element('<div><a href="#" ng-click="toggleCalendarList()" class="btn btn-sm btn-info">Calendar</a><a href="#" ng-click="toggleCalendarList()" class="btn btn-sm btn-success">List </a></div>'))(scope);
然后你可以在你的div中包装这个元素。 Here is angular document关于编译。
:)享受它。
答案 1 :(得分:0)
var html = angular.element('<div><a href="#" ng-click="toggleCalendarList()" class="btn btn-sm btn-info">Calendar</a><a href="#" ng-click="toggleCalendarList()" class="btn btn-sm btn-success">List </a></div>')
var compiled = $compile(html)
calendarHeaderRight.html(html)
compiled($scope)
在Angular中查看编译基本上遍历你给它的任何节点的整个DOM树,创建一个单独的函数,当被调用时将执行它在DOM树中找到的每个指令的每个链接函数,具有适当的范围,元素,属性和(可选)控制器。
泰勒刚刚崩溃的事情几乎一样。