Javascript fullcalendar.js触发事件以编程方式单击
我正试图找到一种方法,以编程方式在特定事件上触发事件单击 在我的应用程序中,用户将事件拖放到日历上,然后必须单击日历才能在弹出表单上插入数据 我想通过触发eventClick自动打开该表单。有人吗 干杯 这是我的密码:Javascript fullcalendar.js触发事件以编程方式单击,javascript,jquery,fullcalendar,Javascript,Jquery,Fullcalendar,我正试图找到一种方法,以编程方式在特定事件上触发事件单击 在我的应用程序中,用户将事件拖放到日历上,然后必须单击日历才能在弹出表单上插入数据 我想通过触发eventClick自动打开该表单。有人吗 干杯 这是我的密码: var calendar = $('#calendar').fullCalendar({ buttonText: { prev: '<i class="icon-chevron-left"></i>',
var calendar = $('#calendar').fullCalendar({
buttonText: {
prev: '<i class="icon-chevron-left"></i>',
next: '<i class="icon-chevron-right"></i>'
},
header: {
left: 'prev,next today',
},
eventSources: [{
// a bunch of event sources
}],
drop: function(date, allDay) { // this function is called when something is dropped
// do some stuff to the event that has been dropped
var event = ...; // I know how to get the event object from here
**// TRIGGER 'eventClick' ON EVENT OBJECT DROPPED IN ORDER TO SHOW FORM**
},
eventClick: function(calEvent, jsEvent, view) {
// Show the data entry form
}
});
var calendar=$(“#calendar”).fullCalendar({
按钮文字:{
上一页:'',
下一步:“”
},
标题:{
左:“上一个,下一个今天”,
},
事件来源:[{
//一堆事件源
}],
drop:function(date,allDay){//在删除某些内容时调用此函数
//对已取消的活动执行一些操作
var event=…;//我知道如何从这里获取事件对象
**//在已删除的事件对象上触发“eventClick”以显示窗体**
},
eventClick:函数(calEvent、jsEvent、view){
//显示数据输入表单
}
});
您可以使用不同的Fullcalendar回调来实现这一点
特别是:
eventDragStart(回调)在事件拖动开始时触发
事件拖动停止时触发eventDragStop(回调)
eventDrop(回调)在拖动停止且事件已移动到其他日期/时间时触发
eventResizeStart(回调)在事件大小调整开始时触发
eventResizeStop(回调)在事件大小调整停止时触发
您可以使用它们获取事件属性,如id,然后在它们内部使用窗体弹出窗口
示例:
假设您想在拖放后弹出表单,您可以使用
...
eventDragStop:function( event, jsEvent, ui, view ) {
alert("i have been dropped, now i´m going to load my form, and my ID is " + event.id);
}
...
我知道这已经有一段时间了,但让我们为谷歌的人保留这一点:
所有这些都在那一页上解释过了,所以我想我不需要再详细说明了。触发点击事件有几种方法,但听起来你真正想要的是触发一个事件处理程序,一个导致表单打开的处理程序。看到了吗?也许可以用小提琴或一些代码来演示你目前所拥有的东西。您正在使用jQueryUI吗?请发布一个提琴和/或你的代码。@KevinB是的,更像是这样。谢谢。@Trevor我正在使用jQuery用户界面。我会发布我的代码。谢谢你的回答。我知道所有这些回调函数,但我尝试做的是:eventDrop:function(event,jsEvent,ui,view){//如何触发event在同一事件上单击此处}完美。现在,如何以自动/编程方式打开该模式?您需要将ID添加到需要在dom中调用的事件中,这样您就可以从代码中调用所需的对话框。另一个选项是按标题搜索事件,例如在本页上(这不是一个很好的示例,因为有很多相同的标题),您可以这样做:$(“body”).find(“.fc title”).each(函数(){if($(this).text()==“员工会议”)$(this.parent().parent().click();返回false;});