我还是Java语言的初学者,并被分配在我们的sharepoint网站上创建一页调查表。我用多个文本框和下拉列表创建了一个。现在,我的下一个目标是将这些字段中的值传递给一个名为“反馈”的现有列表。
我尝试研究,但仍然没有得到一些代码。我有主干代码,但我不知道如何从文本框/下拉列表中传递值。这是我当前的代码:
var value1 = document.getElementById("recipient_dropdown").value;
var value2 = document.getElementById("name_textbox").value;
var webUrl = "https://sharepoint.ap.sample.com/phl/SIL-BA/BAC";
// occurs when a user clicks the create button
function CreateNew() {
var listName = "Feedback";
var newItemTitle = "";
CreateListItemWithDetails(listName, webUrl, newItemTitle, function () {
alert("New Item has been created successfully.");
}, function () {
alert("Ooops, an error occured. Please try again.");
});
}
function CreateListItemWithDetails(listName, webUrl, newItemTitle, success, failure) {
var item = {
'__metadata': { 'type': 'SP.Data.customlistListItem' },
'Title': newItemTitle,
'Addressed_x0020_To': value1,
'Individual_x0020_Name': value2
};
$.ajax({
url: webUrl + "/_api/web/lists/getByTitle('Feedback')/items",
method: "POST",
contentType: "application/json;odata=verbose",
data: JSON.stringify(item),
headers: {
"Accept": "application/json;odata=verbose",
"X-RequestDigest": $("#__REQUESTDIGEST").val()
},
success: function (data) {
alert(data);
},
error: function (data) {
alert(data);
}
});
}
在此示例中,我想将2个变量(值1和值2)的值添加到网址“ https://sharepoint.ap.sample.com/phl/SIL-BA/BAC”中名为“反馈”的现有列表中。
当我单击按钮时,我收到一条警报消息,但它返回“ Obj obj”消息。
也在控制台页面中,它从以下行返回“ Error 400 Bad Request”:webUrl +“ / _api / web / lists / getByTitle('Feedback')/ items”
您能指导我如何使用当前代码吗?如果您能解释其中的一些内容,以便我能理解,我也将不胜感激。非常感谢!
答案 0 :(得分:0)
__metadata
是错误的,假设您的列表是“反馈”,__metadata
应该是SP.Data.FeedbackListItem
。
更新:
我的提琴手测试结果。
代码参考在这里:
https://www.c-sharpcorner.com/article/crud-operation-on-list-items-using-rest-api-services-in-shar/