如何在 js-full-year 日历中 select 范围和添加事件
How to select range and add event in js-full-year calendar
我想知道如何 select 范围并在 js-year-calendar 中添加一个事件。
我的代码如下所示。
现在我可以 select 天并在控制台上显示,但我想注册这个 selected 事件并想在日历中显示它。
如果您已经有一些方法,请告诉我。
此代码参考了以下文档:
https://year-calendar.github.io/js-year-calendar/documentation
new Calendar('.calendar', {
style: 'background',
dataSource: [{
startDate: new Date(2019, 1, 4),
endDate: new Date(2019, 1, 15),
color: "yellow"
}, {
startDate: new Date(2019, 3, 5),
endDate: new Date(2019, 5, 15),
color: "yellow"
}],
enableRangeSelection: true
});
document.querySelector('.calendar').addEventListener('selectRange', function(e) {
console.log("Select the range: " + e.startDate + " - " + e.endDate);
});
类似于 this?
// Create a dataSource variable
let dataSource = [
{
startDate: new Date(2019, 1, 4),
endDate: new Date(2019, 1, 15),
color: "yellow"
}, {
startDate: new Date(2019, 3, 5),
endDate: new Date(2019, 5, 15),
color: "yellow"
}
]
// Create the calendar with the dataSource
let calendar = new Calendar('#calendar', {
style: 'background',
dataSource: dataSource,
enableRangeSelection: true
});
document.querySelector('#calendar').addEventListener('selectRange', function(e) {
// Append the new data to dataSource
dataSource.push({
startDate: e.startDate,
endDate: e.endDate,
color: "red"
})
// Set the updated dataSource as main source
calendar.setDataSource(dataSource)
});
我想知道如何 select 范围并在 js-year-calendar 中添加一个事件。 我的代码如下所示。
现在我可以 select 天并在控制台上显示,但我想注册这个 selected 事件并想在日历中显示它。
如果您已经有一些方法,请告诉我。
此代码参考了以下文档:
https://year-calendar.github.io/js-year-calendar/documentation
new Calendar('.calendar', {
style: 'background',
dataSource: [{
startDate: new Date(2019, 1, 4),
endDate: new Date(2019, 1, 15),
color: "yellow"
}, {
startDate: new Date(2019, 3, 5),
endDate: new Date(2019, 5, 15),
color: "yellow"
}],
enableRangeSelection: true
});
document.querySelector('.calendar').addEventListener('selectRange', function(e) {
console.log("Select the range: " + e.startDate + " - " + e.endDate);
});
类似于 this?
// Create a dataSource variable
let dataSource = [
{
startDate: new Date(2019, 1, 4),
endDate: new Date(2019, 1, 15),
color: "yellow"
}, {
startDate: new Date(2019, 3, 5),
endDate: new Date(2019, 5, 15),
color: "yellow"
}
]
// Create the calendar with the dataSource
let calendar = new Calendar('#calendar', {
style: 'background',
dataSource: dataSource,
enableRangeSelection: true
});
document.querySelector('#calendar').addEventListener('selectRange', function(e) {
// Append the new data to dataSource
dataSource.push({
startDate: e.startDate,
endDate: e.endDate,
color: "red"
})
// Set the updated dataSource as main source
calendar.setDataSource(dataSource)
});