I have been trying to get this function to work, adding new content to a SharePoint list with a button clicked. The below script looks correct but when I select the button it gives me an error, 'Bad Request' and provides me with the path going to my SharePoint List I'm targeting for the test; POST https://name/name/_api/web/lists/getByTitle('views')/items ; which looks good to me. I can't figure what is going wrong. Can someone please see what is causing my error, because I can't. I appreciate any assistance. I replaced the actual url names, with the word "name". Thank you in advance.
$(document).ready(function(){
jQuery(document).on("click", '#btnClick', function(){
CreateListItem();
});
//Retrieve list items from sharepoint using API
function CreateListItem() {
$.ajax
({
// _spPageContextInfo.webAbsoluteUrl - will give absolute URL of the site where you are running the code.
// You can replace this with other site URL where you want to apply the function
url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/lists/getByTitle('views')/items",
type: "POST",
headers:
{
// Accept header: Specifies the format for response data from the server.
"Accept": "application/json;odata=verbose",
//Content-Type header: Specifies the format of the data that the client is sending to the server
"Content-Type": "application/json;odata=verbose",
// X-RequestDigest header: When you send a POST request, it must include the form digest value in X-RequestDigest header
"X-RequestDigest": $("#__REQUESTDIGEST").val()
},
data: JSON.stringify
({
__metadata:
{
// Format of the "type" is: SP.Data.<<ListName>>ListItem
type: "SP.Data.viewsListItem"
},
Title: "New Title"
}),
success: function (data, status, xhr) {
console.log("Success");
},
error: function (xhr, status, error) {
console.log("Failed");
}
});
}
});