4

指示に従ってカレンダーを設定しようとしています。カレンダー自体はページに表示されますが、イベントは表示されません。

テンプレート内のコード:

<div ui-calendar ng-model="eventSources">

私のコントローラーのコード:

var date = new Date();
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();

$scope.eventSources = [
    {
    "title": 'All Day Event',
    "start": new Date(y, m, d)},
{
    "title": 'Long Event',
    "start": new Date(y, m, d - 5),
    "end": new Date(y, m, d - 2)}];

テンプレートで eventSources をループすると、次のように機能します。

<li ng-repeat="e in eventSources">
    {{e.title}} {{e.start}}
</li>

ただし、カレンダーには何も表示されません。コンソールにもエラーはありません。ここで何が起こっているのか知っている人はいますか?

4

2 に答える 2

0

これは、「eventsources:」を使用してイベントをロードする方法です: イベントソースの配列があります: これを行うには 2 つの方法があります:

1- JSON (イベントはすでに JSON 形式であり、反復する必要がないため高速です) 2- Ajax 呼び出し (ここで xml を反復する必要があるため低速です)

 var othersources = {       
                     jsonsource: {               
                                    url: ajaxcallURL(_url,"7"),
                                    type: 'POST',                               
                                    //error: function() { alert('something broke with courses...'); },
                                    data:{                                                                  
                                        'func':func,
                                        'year':y
                                    },
                                    cache: false,              
                                    color: '#C1272D',
                                    textColor: 'white'                             
                                 },
                   ajaxcallsource: {               
                            events: function(start, end, callback) {
                            $.ajax({
                                type: 'POST',
                                url: ajaxcallURL(_url,"7"),             
                                data: {
                                    // our hypothetical feed requires UNIX timestamps
                                    start: Math.round(start.getTime() / 1000),
                                    end: Math.round(end.getTime() / 1000),                                  
                                    'func':func,
                                    'year':y                    
                                },          
                                success: function(doc) {    

                                    var events = [];
                                    var allday = null; //Workaround
                                    var Editable = null; //Workaround  
                                    $(doc).find('event').each(function() 
                                    {                       
                                        if($(this).attr('allDay') == "false") //Workaround 
                                                allday = false; //Workaround 
                                        if($(this).attr('allDay') == "true") //Workaround 
                                                allday = true; //Workaround
                                        if($(this).attr('editable') == "false") //Workaround 
                                                Editable = false; //Workaround 
                                        if($(this).attr('editable') == "true") //Workaround 
                                                Editable = true; //Workaround                       

                                        events.push({
                                            id: $(this).attr('id'),
                                            title: $(this).attr('title'),
                                            start: $(this).attr('start'),
                                            end: $(this).attr('end'),                       
                                            allDay: allday,
                                            editable: Editable
                                        });                             
                                    });                                             
                                    callback(events); 
                                }
                            });             
                        },                
                            cache: false,
                            //error: function() { alert('something broke with courses...'); },
                            color: '#C1272D',
                            textColor: 'white',
                            //className: 'course'
                       }
   } //othersources array close

カレンダーのプロパティ内:

eventSources:[othersources.jsonsource,ajaxcallsource],

幸運を

于 2013-06-20T20:00:10.320 に答える