关于jquery中对data数据的处理.

jQuery.ajax相信是大家常用的一个方法,但是在springMVC的情况下处理data值的时候会让人头大.
    jQuery在api中说:
    data选项既可以包含一个查询字符串,比如 key1=value1&key2=value2 ,也可以是一个映射,比如 {key1: 'value1', key2: 'value2'} 。如果使用了后者的形式,则数据再发送器会被转换成查询字符串。这个处理过程也可以通过设置processData选项为false来回避。
    但是实际的情况是:
    一个js字面量对象{p:["p1","p2"],d:[{name:"kong",age:"18"},{name:"zhang",age:"19"}]}会被转成这个形式p[]=p1&p[]=p2&d[0][name]=kong&d[0][age]=18&d[1][name]=zhang&d[1][age]=19,好吧这个样子springMVC的参数默认参数收集器是不认的.我们需要的格式实际是这个样子p[0]=p1&p[1]=p2&d[0].name=kong&d[0].age=18&d[1].name=zhang&d[1].age=19
    为了解决一下问题我们现在用下面的方法转换一下就ok了
   
function serializeJson(_prm){
  var prm = _prm;
  var str = "";
  function crs(obj , root){
    var stype = typeof(obj);
    if(stype=="number" || stype=="string"){
        str = str+root+"="+obj+"&";
        return;
    }
    if(obj instanceof Array){
      for(var i=0; i



你可能感兴趣的:(JavaScript)