Javascript AngularJS FullCalendar-单击可更改月份 问题
我的应用程序上有一组按钮,它们是一年中不同的月份。当用户单击日历时,日历应更改为该月,并更新其上方的标签 我曾经尝试过这一点(您将从下面的代码中看到),但我确实坚持了如何实现我的目标。如果你们能帮助我找到编写代码的最佳方法,以及如何编写这个问题的代码,那就太好了 代码Javascript AngularJS FullCalendar-单击可更改月份 问题,javascript,asp.net,angularjs,Javascript,Asp.net,Angularjs,我的应用程序上有一组按钮,它们是一年中不同的月份。当用户单击日历时,日历应更改为该月,并更新其上方的标签 我曾经尝试过这一点(您将从下面的代码中看到),但我确实坚持了如何实现我的目标。如果你们能帮助我找到编写代码的最佳方法,以及如何编写这个问题的代码,那就太好了 代码 如你所见,我有一个按钮列表,这些是一年中不同的月份(忽略内联代码,我知道它需要移动:p),我添加了3个按钮,因为你不需要看到它们,它们都是一样的。我还将标签添加到此代码中: <div class="col-lg-2" ng
如你所见,我有一个按钮列表,这些是一年中不同的月份(忽略内联代码,我知道它需要移动:p),我添加了3个按钮,因为你不需要看到它们,它们都是一样的。我还将标签添加到此代码中:
<div class="col-lg-2" ng-controller="monthSelection" style="height: 100%;">
<div class="row" style="border-bottom: 1px solid #E7E7E7; padding-bottom: 20px;">
<div class="col-lg-12 text-center" style="padding-top: 20px;">
<span style="font-weight: 400; font-size: 20px;">April 2016</span>
</div>
</div>
<div class="row" style="padding-top: 10px;">
<div class="col-lg-4">
<button style="border: none; background-color: #ffd47f; border-radius: 5px; height: 30px; width: 100%;" ng-click="JanClick()>Jan</button>
</div>
<div class="col-lg-4">
<button style="border: none; background-color: #ffd47f; border-radius: 5px; height: 30px; width: 100%;">Feb</button>
</div>
<div class="col-lg-4">
<button style="border: none; background-color: #ffd47f; border-radius: 5px; height: 30px; width: 100%;">Mar</button>
</div>
</div>
</div>
结论
如何将日历更改为正确的月份以及日历上方的标签?编写代码以尽可能减少代码的最佳方法是什么?使用plunker会很有帮助。在
ng click=“JanClick()
之后,您缺少一个结束语”
,这可能会给事情带来麻烦。一种方法可能是使用一个月对象数组,如{name:'Jan',monthIndex:0}
,{name:'Feb',monthIndex:1}
,等等,然后重复它们以在html中创建按钮。然后您的ng click
函数可以是setMonth(month)
,它在控制器中是$scope.setMonth=function(month){$scope.calendar.fullCalendar('gotoDate',2012,month.monthhindex)代码>@Bennettams谢谢你的回复。我想知道,我的控制器代码在哪里,我说$scope.calendar.fullCalendar
这与我的日历代码正确吗?我不确定,但我在模板中没有看到日历
或fullCalendar
的引用,该引用的范围是monthSelection
控制器。如果您正在使用monthSelection
控制器来控制范围为不同控制器的日历的显示,则除非您有某种服务来处理控制器之间的数据,或b)通过monthSelection
控制器中的$rootScope.$broadcast
和日历显示控制器中的$scope.$侦听器从一个控制器传递到另一个控制器的消息。再说一次,一个扑克牌也不错:)
<div class="row">
<div class="col-lg-12">
<div ng-controller="aceTracker">
<div ng-model="eventSources" ui-calendar="uiConfig.calendar"></div>
</div>
</div>
</div>
app.controller('monthSelection', function ($scope) {
$scope.JanClick = function () {
$scope.calendar.fullCalendar('gotoDate', 2012, 11);
}
});