jQuery   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了如何在jquery.ajax函数中将对象转换为数据的序列化语法?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个对象,我想用我的 jquery.ajax函数发送,但我找不到任何将它转换为我需要的序列化格式的东西.

$.ajax({
  type: 'post',url: 'www.example.com',data: MyObject,success: function(data) {
    $('.data').html(data)
  }
})

MyObject = [
  {
    "UserId": "2","UserLevel": "5","FirstName": "Matthew"
  },{
    "UserId": "4","FirstName": "Craig"
  }
]

serialized_format = [
  {
    "name": "UserId","value": "5"
  },{
    "name": "UserLevel","value": "4"
  },{
    "name": "FirstName","value": "Craig"
  }
]

解决方法

所以我会把我的评论作为答案.如果要将数组传输到服务器端,可以将其转换为JSON(至少这将是最简单的方式).

使用JSON

$.ajax({
  type: 'post',data: {paramter: JSON.Stringify(MyObject)},success: function(data) {
    $('.data').html(data)
  }
});

其中parameter是要使用的POST参数的名称.

JSON.Stringify会给你一个字符串:

'[{"UserId":"2","UserLevel":"5","FirstName":"Matthew"},{"UserId":"4","FirstName":"Craig"}]'

在服务器端检索,例如使用PHPjson_decode

$data = json_decode($_POST['parameter']);

会给你一个对象数组:

Array
(
    [0] => stdClass Object
        (
            [UserId] => 2
            [UserLevel] => 5
            [FirstName] => Matthew
        )

    [1] => stdClass Object
        (
            [UserId] => 4
            [UserLevel] => 5
            [FirstName] => Craig
        ) 
)

我还建议将MyObject重命名为反映变量内容的有意义的东西.实际上,你有一个数组,而不是一个对象(是的,我知道数组也是对象).

大佬总结

以上是大佬教程为你收集整理的如何在jquery.ajax函数中将对象转换为数据的序列化语法?全部内容,希望文章能够帮你解决如何在jquery.ajax函数中将对象转换为数据的序列化语法?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。