• ajax请求的data数据格式


    ajax提交data类型

    一、问题来源

    今天使用ajax时,发现get传data时,传递json字符串时传不过去参数,所以做了一些实验测试ajax的get和post的传递data时的不同。

    二、概念

    ajax有三种传递传递data的方式:

    • json格式
    • json字符串格式
    • 标准参数模式

    1.json格式

    形如: 
    {“username”:”chen”,”nickname”:”alien”}

    ajax:

    $.ajax({
        type:"post",
        url:"/test/saveUser",
        data:{"username":"chen","nickname":"alien"},
        dataType:"json",
        success: function(data){
            console.log(data);
        }
    });

    2.json字符串 
    形如: 
    “{“username”:”chen”,”nickname”:”alien”}” 或者JSON.stringify({“username”:”chen”,”nickname”:”alien”})

    ajax:

    $.ajax({
        type:"post",
        url:"/test/saveUser",
        data:JSON.stringify({"username":"chen","nickname":"alien"}),
        contentType:"json/application"
        dataType:"json",
        success: function(data){
            console.log(data);
        }
    });

    用此格式get请求参数传递不过去,不会把json串解析成参数 
    而且需要添加 contentType:”json/application”

    3.标准参数模式

    形如: 
    “username=chen&nickname=alien”

    ajax:

    $.ajax({
        type:"post",
        url:"/test/saveUser",
        data:"username=chen&nickname=alien",
        dataType:"json",
        success: function(data){
            console.log(data);
        }
    });

    $(“#form1”).serialize() 就是把表单的数据拼成这个格式的字符串!

    三、总结

    post请求能用1、2、3类型传递参数 
    get请求能用1、3类型传递参数 
    $(“#form1”).serialize() 是将对应表单中的input的name和value进行拼装,最后拼成3类型的字符串

  • 相关阅读:
    P1030 求先序排列 P1305 新二叉树
    spfa
    Clairewd’s message ekmp
    Cyclic Nacklace hdu3746 kmp 最小循环节
    P1233 木棍加工 dp LIS
    P1052 过河 线性dp 路径压缩
    Best Reward 拓展kmp
    Period kmp
    Substrings kmp
    Count the string kmp
  • 原文地址:https://www.cnblogs.com/yangguoe/p/8986108.html
Copyright © 2020-2023  润新知