更新空字段以包含值-Rest API

问题描述

所以我有一段代码,如果该字段包含内容,它将更新一个字段值,尽管如果我要更新的字段为null,则该值将不会更新。我在做错什么吗?

siteURL = _spPageContextInfo.webAbsoluteUrl;
        var apiPath = _spPageContextInfo.webAbsoluteUrl +"/_api/lists/getbytitle('Training%20copy')/items/getbyid(9)"; 
        $.ajax({  
                url: apiPath,type: "POST",headers: {  
                    Accept: "application/json;odata=verbose"  
                },data: JSON.stringify
                ({
                    __Metadata:
                    {
                        type: "SP.Data.Training_x0020_copyItem"
                    },Admin_x0020_Function: "Have content"
                    
                }),headers: {  
                "Accept": "application/json;odata=verbose","Content-Type": "application/json;odata=verbose","X-RequestDigest": $("#__REQUESTDIGEST").val(),"IF-MATCH": "*","X-HTTP-Method": "MERGE" 
            },async: false,success: function(data) {  
                console.log("Item updated successfully");  
            },eror: function(data) {  
                console.log("An error occurred. Please try again.");  
            }
        }) 

解决方法

ajax请求中有两个标头参数,尚不清楚它是否会影响。

我的测试代码供您参考:

  <script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.9.1.min.js" type="text/javascript"></script>
    <script>
    $(document).ready(function () {
    Update()
    function Update(){  
        $.ajax({  
        url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/lists/GetByTitle('Doc')/items(9)",type: "POST",headers: {  
            "accept": "application/json;odata=verbose","X-RequestDigest": $("#__REQUESTDIGEST").val(),"content-Type": "application/json;odata=verbose","IF-MATCH": "*","X-HTTP-Method": "MERGE"  
        },data: JSON.stringify({__metadata:{'type':'SP.Data.DocItem'},test:'test'}),/*where Title is column name and add your desired new data*/  
        success: function(data) {  
            console.log(data);  
        },error: function(error) {  
            alert(JSON.stringify(error));  
        }  
    });
    }
    })
    </script>

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...