jquery param 数组 带有 %5B%5D [] 问题

jquery param 数组 带有 %5B%5D [] 问题

默认使用jquery.param 序列化数组时 参数名称会额外生成 %5B%5d [] 这样的内容

解决办法 添加第二个参数:true

实例1:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <script src="jquery.min.js"></script>
</head>
<body>
</body>
<script>
    //第一种参数形式
    var obj = {
        areaName: "abc",
        // 标题
        title: "def",
        sourceTypes:[1,2,3],
    };
    console.log("=>",jQuery.param(obj,true));  
    console.log("===>",jQuery.param(obj));
</script>
</html>

结果:
=>, areaName=abc&title=def&sourceTypes=1&sourceTypes=2&sourceTypes=3
===>, areaName=abc&title=def&sourceTypes%5B%5D=1&sourceTypes%5B%5D=2&sourceTypes%5B%5D=3

实例2:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <script src="jquery.min.js"></script>
</head>
<body>
</body>
<script>
    //第二种参数形式
    var param = {};
    param.areaName = $("#areaName").val();
    param.title = $("#title").val();
    param.sourceTypes = $("#sourceTypes").val();
        
    console.log("=>",jQuery.param(param,true));  
    console.log("===>",jQuery.param(param));
</script>
</html>

结果:同上

相关推荐