2017-09-18 6 views
0

그래서 전체 캘린더 JavaScript를 내 프로젝트에서 사용하고 있습니다. 낮 렌더링 함수 내에서 매일 셀에 속성을 설정했습니다. 질문 : 기간을 사용하여 속성을 가져올 수 있습니까? 그게 가능하니? 어떤 제안이라도 감사드립니다.전체 캘린더 날짜 범위로 셀 속성 가져 오기

답변

0

각 셀은 클래스 fc-day을 가지며, 각각은 해당 날짜를 나타내는 속성 data-date (예 : 2017-09-19)을가집니다.

예를 들어, 2017 년 9 월을 보여주는 월보기에 있고 그 날 셀에 dayRender을 통해 추가 된 "MyCustomAttr"이라는 사용자 정의 속성 (해당 날짜의 전체 요일 표시) 같은 : 다음

dayRender: function(date, cell) { 
    cell.attr("MyCustomAttr", "Day Of Year: " + date.format("DDD")); 
}, 

, 당신은, 당신이 시간 이후에 한가 실행될 (이 코드를 실행할 수있는 사용자 정의를 얻을 범위 10 - 15 년 (전용) 9 월 모든 셀의 속성 값을 할 dayRender 콜백이 실행되었습니다.) :

var days = $(".fc-day"); 
var attributes = []; 
var rangeStart = moment("2017-09-10"); 
var rangeEnd = moment("2017-09-15"); 

days.each(function(index, element) { 
    var day = moment($(this).data("date")); 
    if (day.isBetween(rangeStart, rangeEnd)) 
    { 
    attributes.push($(this).attr("MyCustomAttr")); 
    } 
}); 

console.log(JSON.stringify(attributes)); 

여기에서 작동 예제를 볼 수 있습니다 : http://jsfiddle.net/sbxpv25p/20/

N.B. 예를 들어 배열에 속성 값을 넣었습니다. 속성 값은 더 이상 일과 연관되지 않으므로 그다지 유용하지 않습니다. 일단 속성을 얻은 후에는 속성을 사용하여 수행하고자하는 작업을 말하지 않았으므로 필요에 맞게 예제를 수정하여 맡깁니다.