Jquery Ajax 没有将数据传递给 MVC 控制器

Jquery Ajax Not Passing Data to MVC Controller

我正在使用 jquery 的 ajax 方法将数据提交到 MVC 控制器。但是,没有数据传递给控制器​​。我尝试将控制器期望的参数更改为字符串和期望的对象。当它是一个字符串时传递 null,当它是一个对象时创建一个空对象。

下面的代码不言而喻,但作为简要说明,我正在创建一个包含客户数据的 javascript 对象,并将其字符串化为 ajax 调用的一部分。

我知道之前有关于此的帖子,我已关注但没有成功。

非常感谢任何帮助。

 var data = {
                 id: _CustomerID,
               Address1 : _Address1,
               Address2 : _Address2,
               Address3 : _Address3,
               Address4 : _Address4,
               PostCode : _Address5,
               EmailAddress : _Email,
               PhoneNumber : _Phone,
               postemail: _postemail,
               postonly: _postonly,
               emailonly: _emailonly
         }
         url = '@Url.Action("UpdateContactDetails", "MyAccount")';

         $.ajax({
                type: "POST",
                dataType: "json",
                data: JSON.stringify({CustomerObj: data}),
                url: url,
                contentType: "application/json"
            }).done(function (res) 
            {
                //process result
            });

我用这个 website 来测试你的 Ajax 请求,你必须发送对象参数而不是 JSON.stringify

Ajax 请求示例代码:

$.ajax({
  type: 'POST',
  dataType: 'json',
  data: {
    'name': 'morpheus',
    'job': 'leader'
  },
  url: 'https://reqres.in/api/users'
}).done(function(response) {
  console.log(response)
});