fullcalendar拖动事件在getEventSources中不可见

时间:2017-01-17 17:53:58

标签: javascript jquery fullcalendar

我在HTML页面上加载了一个fullcalendar日历,其中包含一些可拖动的事件。我可以在我的日历上拖动和发布它们,但是我试图通过"保存按钮"来检索那些定位要保存在我的数据库中的事件。使用以下代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="wrap_content"
    android:background="@android:color/white"
    android:layout_height="wrap_content"
    tools:context=".MainActivity">

    <android.support.v4.widget.SwipeRefreshLayout
        android:id="@+id/swipe_refresh_layout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

    <android.support.design.widget.AppBarLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/appBarLayout"
        android:theme="@style/AppTheme.AppBarOverlay">

    </android.support.design.widget.AppBarLayout>

    <include layout="@layout/content_main" />

    <ListView
        android:id="@+id/text_json"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textColor="@android:color/holo_blue_dark"
        android:textColorHighlight="@android:color/primary_text_dark"
        android:layout_centerVertical="true"
        android:layout_alignParentEnd="true"
        android:cacheColorHint="#00000000"
        android:textSize="14sp" />


     </android.support.v4.widget.SwipeRefreshLayout>

</RelativeLayout>

使用HTML代码:

function saveEvents(){

obj = $('#calendar').fullCalendar('getEventSources');
console.log("Events: "+JSON.decycle(obj));

$.ajax({
type: 'get',
url: 'setCalendarServlet',
dataType: 'JSON',
data: { 
  loadProds: 1,
  json: JSON.stringify(JSON.decycle(obj))
},
success: function(data) {

},
error: function(data) {
}
});

但是当我找回<body> <div id='wrap'> <div id='external-events'> <h4>Evenements</h4> <div class='fc-event'>event 1</div> <div class='fc-event'>event 2</div> </div> <a class="btn btn-default" href="javascript:saveEvents();">save</a> <div id='calendar'></div> <div style='clear:both'></div> </div> 时,我没有得到刚刚拖延的事件......

我尝试使用以下方法刷新我的活动:

$('#calendar').fullCalendar('getEventSources');

或     $(&#39;#calendar&#39;)。fullCalendar(&#39; refetchEvents&#39;);

但我的结果相同......

我怎样才能将它们放入我的对象中?

1 个答案:

答案 0 :(得分:2)

我终于找到了解决方案......

只需使用以下行检索事件:

obj = $('#calendar').fullCalendar('clientEvents');

而不是getEventSources 。希望它会有所帮助...