我想使用 Capybara 在 jQuery Fullcalendar 中触发“创建”事件,但我不知道要单击哪个元素。无论如何,我不确定Capybara是否可能......
问问题
766 次
1 回答
2
我创建了一个演示,如果用户单击日历日,则会创建一个新的日历事件。
查看dayclick 回调代码:
dayClick: function(date, allDay, jsEvent, view) {
if (allDay) {
alert('Clicked on the entire day: ' + date);
}else{
alert('Clicked on the slot: ' + date);
}
// change the day's background to highlight the fact that its been clicked
$(this).css('background-color', 'red');
// Create a new event for the day that was clicked
var myEvent = {
title:"my new event",
allDay: true,
start: date,
end: date
};
cal.fullCalendar( 'renderEvent', myEvent );
}
然后,您可以使用 Capybara 在 jQuery Fullcalendar 中单击一个日期(当上述代码到位时,这将触发一个新事件的创建),如下所示:
page.find(:css, "td[data-date='2013-11-06']").click()
请注意,您需要定制 CSS 以准确选择要单击的 FullCalendar 日(即 TD 元素),但这只是一个示例。
有关如何执行此操作,请参阅此处的 Caybara 文档。
于 2013-11-06T18:31:08.270 回答