Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Javascript在SharePoint日历列表中设置RecurrenceData值_Javascript_Jquery_Fullcalendar_Sharepoint 2013_Office365 - Fatal编程技术网

如何使用Javascript在SharePoint日历列表中设置RecurrenceData值

如何使用Javascript在SharePoint日历列表中设置RecurrenceData值,javascript,jquery,fullcalendar,sharepoint-2013,office365,Javascript,Jquery,Fullcalendar,Sharepoint 2013,Office365,如何使用Javascript在SharePoint日历列表中设置RecurrenceData值 var recurreciveData = "<recurrence> <rule> <repeat> <daily dayFrequency=\"" + repeatDayz

如何使用Javascript在SharePoint日历列表中设置RecurrenceData值

var recurreciveData = "<recurrence>
                           <rule>
                               <repeat>
                                   <daily dayFrequency=\"" + repeatDayz + "\" />
                               </repeat>
                               <windowStart>
                                   " + repeatStrtDate.toISOString() + "
                               </windowStart>
                               <windowEnd>
                                   " + repeatEndDate.toISOString() + "
                               </windowEnd>
                           </rule></recurrence>";
var data = JSON.stringify({
    "__metadata": {
        "type": "SP.Data."+ listName +"ListItem"
    },
    "Title": title,
    "Location": location,
    "RoomId": room,
    "EventDate": strtDate,
    "EndDate": endDate,
    "fRecurrence": true,
    "RecurrenceData": recurreciveData,
}); 
var recurreciveData=”
“+repeatStrtDate.toISOString()+”
“+repeatEndDate.toISOString()+”
";
var data=JSON.stringify({
“_元数据”:{
“类型”:“SP.Data.”+listName+“ListItem”
},
“头衔”:头衔,
“位置”:位置,
“室友”:房间,
“事件日期”:strtDate,
“结束日期”:结束日期,
“频率”:没错,
“RecurrenceData”:RecurrenceCiveData,
}); 

要通过SharePoint REST API创建重复事件,需要指定以下属性:

  • EventDate
  • EndDate
  • fRecurrence
    设置为
    true
  • EventType
    设置为
    1
  • RecurrenceData
示例

var listTitle = "Calendar";
var itemProperties = {
    '__metadata': { "type": "SP.Data.CalendarListItem" },
    'Title': 'Event 123',
    'EventDate' : '2015-06-03T09:00:00Z',
    'EndDate' : '2017-06-03T09:00:00Z',
    'fRecurrence': true,
    'EventType' : 1,
    'RecurrenceData': '<recurrence><rule><firstDayOfWeek>su</firstDayOfWeek><repeat><daily dayFrequency="1" /></repeat><repeatForever>FALSE</repeatForever></rule></recurrence>'
};

createListItem(listTitle,itemProperties)
.done(function(item)
{
    console.log('Event has been created');
})
.fail(function(error){
    console.log(JSON.stringify(error));
});

嗨,瓦迪姆!非常感谢。改为JSOM,工作正常,但在“日历”视图中打开时出现问题:您没有这个问题吗?
function executeJson(options) 
{
    var headers = options.headers || {};
    var method = options.method || "GET";
    headers["Accept"] = "application/json;odata=verbose";
    if(options.method == "POST") {
        headers["X-RequestDigest"] = $("#__REQUESTDIGEST").val();
    }   

    var ajaxOptions = 
    {       
       url: options.url,   
       type: method,  
       contentType: "application/json;odata=verbose",
       headers: headers
    };
    if("data" in options) {
      ajaxOptions.data = JSON.stringify(options.data);
    }  

    return $.ajax(ajaxOptions);
}



function createListItem(listTitle,payload){
    var url = _spPageContextInfo.webAbsoluteUrl + "/_api/web/lists/getbytitle('" + listTitle + "')/items";
    return executeJson({
        "url" :url,
        "method": 'POST',
        "data": payload});
}