我有一個SharePoint列表(我們稱之爲'Employee'),並且使用jQuery和REST讀取和寫入列表中的屬性。如何使用REST更新SharePoint列表中的圖像url字段
如果我想更新例如一個int屬性(姑且稱之爲「EmployeeAge」),這是相當簡單:
jQuery.ajax({
url: myUrl,
type: "POST",
data: JSON.stringify({ '__metadata': { 'type': 'SP.Data.EmployeeListItem' }, 'EmployeeAge': age }),
headers: {
"accept": "application/json;odata=verbose",
"content-type": "application/json;odata=verbose",
"content-length": 0,
"X-HTTP-Method": "MERGE",
"X-RequestDigest": $("#__REQUESTDIGEST").val(),
"IF-MATCH": "*"
},
success: successHandlerUpdateEmployeeAge,
error: errorHandlerUpdateEmployeeAge
});
現在我想用同樣的原理來更新列表的另一列。我們稱之爲'EmployeeImage'。該列是超鏈接/圖片和子類型圖片的類型。我想爲特定的列表項設置列的圖像url屬性。
如何格式化ajax調用中的數據屬性以支持此類更新?
我可以找到關於如何更新標題字段的一千個樣本,但沒有關於像這樣的複雜類型的更新。
您是否嘗試過只發送圖像的網址是什麼?或者你想要描述? –
是的,當然,我收到了一個'錯誤的請求'錯誤。但實際上你的評論讓我仔細檢查,並且在用Fiddler檢查請求之後,我注意到了一個我從未見過的更詳細的錯誤消息:'屬性「EmployeeImage」在SP.Data.EmployeeListItem類型中不存在。這使我認爲屬性名稱是由url/description結構產生的,所以不是'EmployeeImage'而是'EmployeeImage.Url'或類似的東西,但我不知道正確的命名。 – TMan
當字段在列表中根本不存在時,我收到了這個錯誤。但情況可能並非如此。嘗試使用UI填充此列,然後使用rest返回其值,然後查看它具有的格式。 –