2017-07-30 13 views
0

私の休暇申請の1つにFullcalendarを使用しようとしています。ユーザーが日付を選択して休暇を適用できるように、選択オプションが有効になっています。しかし、週末の選択を無効にしたい、つまりユーザーが週末をクリックしたときに警告を表示する必要があります。それは適格か?週末のイベント作成を無効にする

私のコード

this.calendarOptions = { 
 
    height:450, 
 
    defaultDate: moment(new Date(),'YYYY-MM-DD'), 
 
    editable: false, 
 
    stick:true, 
 
    selectable:true, 
 
    eventLimit: false, // allow "more" link when too many events 
 
    events: this.eventList, 
 
    header: { 
 
     left: 'month basicWeek basicDay', 
 
     center: 'title', 
 
     right: 'today prev,next' 
 
    }, 
 
    displayEventTime: false, 
 

 
    select: (start, end, allDay) => { 
 
     this.startDate=moment(start).format("YYYY-MM-DD"); 
 
     this.endDate=moment(end).format("YYYY-MM-DD"); 
 
     $('.first.modal').modal('show'); 
 
    }, 
 
    dayRender: (date, cell)=> { 
 
    //logic 
 
    }, 
 
    selectOverlap:false, 
 
};

答えて

0

あなたはselect方法でそれを行うことができます。 startDateからendDateに移動して、その日のいずれかが週末であるかどうかを確認してください。 その場合は、alert/popupを表示してfalseを返します。

select: (start, end, allDay) => { 
    var startDate = moment(start), 
    endDate = moment(end), 
    date = startDate.clone(), 
    isWeekend = false; 

    while (date.isBefore(endDate)) { 
     if (date.isoWeekday() == 6 || date.isoWeekday() == 7) { 
      isWeekend = true; 
     }  
     date.add(1, 'day'); 
    } 

    if (isWeekend) { 
     alert('can\'t add event - weekend'); 

     return false; 
    } 

    this.startDate= startDate.format("YYYY-MM-DD"); 
    this.endDate= endDate.format("YYYY-MM-DD"); 

    //$('.first.modal').modal('show'); 
}, 

fiddleを参照してください。

+0

ありがとうございました。:) –

関連する問題