簡體   English   中英

無法使用 Sharepoint 2016 中的 REST API 更新列表中的列表項

[英]Unable to update the list item in the list using REST API in Sharepoint 2016

我從一個月開始就一直在處理這個問題,但無法解決這個問題。 我可以使用 GET 方法 rest api 檢索列表。 但我無法使用 rest api 中的 POST 方法更新列表中的項目。 為了清楚起見,我們的想法是獲取點擊鏈接的點擊次數,它應該自動更新列表中該鏈接名稱的計數。 因此,以前的開發人員創建了兩個已命名為'a''b' 的列表。

  • 'a'列表包含 pdf、docx。
  • “b”列表包含“a”列表、名稱和其他列的 pdf 鏈接。
  • 我創建了另一個列表“c” ,其中包含“b”列表和計數的名稱。

所以,我正在嘗試更新“c”列表中的計數列。 但是我無法從代碼本身更新計數。 下面的代碼是我嘗試過的方法之一。 請幫助我解決這個問題,即使在上個月嘗試了 sharepoint 博客和導師的許多方法之后,我仍然一無所知。

function getItems() {  
    var resturl = _spPageContextInfo.webAbsoluteUrl + "/_api/web/lists/getbytitle('c')/items"; 
        $.ajax({  
            url: resturl,  
            type: "GET",  
            headers: {  
                "accept": "application/json;odata=verbose",  
            },  
            success: function(data) {  
                //console.log(data.d.results);  
                var items = data.d.results; 
                for (var i = 0; i < items.length; i++) {                
                console.log("From C List -> Name: " + items[i].Title + ", Count: " + items[i].Count);                 
                }  
            },  
            error: function(error) {  
            alert(JSON.stringify(error));  
            }  
        });  
 }  

var prevcount = 0;
function updateItems() {  
   
       var resturl = _spPageContextInfo.webAbsoluteUrl + "/_api/web/lists/getbytitle('c')/items";
       prevcount = prevcount + 1;
   
       $.ajax({
           url: resturl,
           method: "POST",
           headers: {
               "accept": "application/json;odata=verbose",
               "X-RequestDigest": $("#__REQUESTDIGEST").val(),
               "content-Type": "application/json;odata=verbose",
               "IF-MATCH": "*",
               "X-HTTPS-Method": "MERGE"
           },
           data: "{__metadata:{'type':'SP.Data.cListItem'}, Count: prevcount}",
      
           async: false, success: function (data) {              
           console.log(data.d.results);   
           },
     
           error: function (data) {   
           console.log(data.responseJSON.error);   
           }   
       });
   }

在您的updateItems function 中,您需要在resturl中指定要更新的列表項 id,如下所示:

var resturl = _spPageContextInfo.webAbsoluteUrl + "/_api/web/lists/getbytitle('c')/items(1)";

您可以參考這篇文章了解更多信息: https://www.codesharepoint.com/rest-api/update-listitem-in-sharepoint-using-rest-api

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM