AJAX中data的三种格式的特点分析

ajax向后台发送请求时,可以通过data提交参数,data的数据格式有三种格式:

1)第一种:

1.1格式:data:{ k1:v1,

             k2:v2,

                  .... }        

    1.2劣势:只能向后台提交一个参数名对应一个参数值的字符串类型的数据。

    1.3 优势:结构简单,常用于查询,修改,新增等操作。

  2)第二种:

2.1格式:data:k1=v1&k2:v2&....

    2.2优势:不但能够向后台提交一个参数名对应一个参数值的数据,

           还能向后台提交一个参数名对应多个参数值的数据,常用于多项删除和导出等操作。

    2.3 劣势:操作麻烦,请求前要进行字符串的拼接,且只能向后台提交字符串类型的数据。

  3)第三种:

格式:data:FormData对象,以传递.xls文件为例。                                

var 文件名=$("选择器").val();//获取文件名           
var suffix=activityFileName.substr(文件名.lastIndexOf(".")+1).toLocaleLowerCase();
//获取文件的扩展名即(.xls)

 if(suffix!="xls"){
                    alert("只支持xls文件");
                    return;
                  }

               var 文件=$("选择器")[0].files[0];//获取文件

//FormData是ajax提供的接口,可以模拟键值对向后台提交参数;

                    //FormData不但能提交文本数据,还能提交二进制数据

var formData=new FormData();

formData.append("文件名",文件);

                    //发送请求

                    $.ajax({

                             url:'...',

                             data:formData,
                             
                             dataType:'...',

                             processData:false,//设置ajax向后台提交参数之前,是否把参数统一转换成字符串
                             contentType:false,//设置ajax向后台提交参数之前,是否把所有的参数统一按urlencoded编码

                             type:'post',

                          success:funtion(data){...}
                            });

     优势:不但能提交字符串数据,还能提交二进制数据,常用于递交文件。

     劣势:操作更加复杂。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值