2013-04-01 32 views
0

如果我的jQuery的序列化发布如下:你如何选择你用jquery序列化的json信息?

{"PurchaseOrders":[{"Id":"8a4c70a63db7b320013dc35247960095","Version":124,"Context":{"RealmId":"1","CustomerId":"111","ProjectId":"2222","Operation":null} 

如何排除

{"PurchaseOrders":[ 

从我的职务,同时还提交一切它包含?

我目前使用这个剧本,我的系列化: https://github.com/tlowrimore/jquery.serialize-object/blob/master/jquery.serialize-object.js

(function($) { 
    var methods = { 
     setValue: function(path, value, obj) { 
      if(path.length) { 
       var attr = path.shift(); 
       if(attr) { 
        obj[attr] = methods.setValue(path, value, obj[attr] || {}); 
        return obj; 
       } else { 
        if(obj.push) { 
         obj.push(value); 
         return obj; 
        } else { 
         return [value]; 
        } 
       } 
      } else { 
       return value; 
      } 
     } 
    }; 

    $.fn.serializeObject2 = function() { 
     var obj  = {}, 
      params = this.serializeArray(), 
      path = null; 

     $.each(params, function() { 
      path = this.name.replace(/\]/g, "").split(/\[/); 
      methods.setValue(path, this.value, obj); 
     }); 

     return obj; 
    }; 
})(jQuery); 

$(document).ready(function() { 

    $("#btn-add-po-submit").click(function(e) { 

     e.preventDefault(); 

     var formData = $("#form-add-po").serializeObject2(); 
     var url = $("#form-add-po").attr("action"); 

     console.log(url); 

     $.ajax({ 
      type: 'POST', 
      contentType: "application/json", 
      url: url, 
      dataType: 'json', 
      data: JSON.stringify(formData), 
      error : function(jqXHR, textStatus, errorThrown) { 
       console.error(textStatus); 
      }, 
      success : function(data, textStatus, jqXHR) { 
       console.log(textStatus); 

      } 
     }); 
     /*$('#result').text(JSON.stringify($('form').serializeObject())); 
     return false;*/ 
    }); 
+0

假设'json'是完整的对象。你不能只通过'json ['PurchaseOrders']'? –

+0

上面的js通过哪里? – beng

+0

'data:JSON.stringify(formData ['PurchaseOrders']),' –

回答

0

的JSON对象应该是分开的变量some​​wher的。如果它与var obj分开,那么您可以使用obj['PurchaseOrders']obj.PurchaseOrders来获得PurchaseOrders数组。

+0

对不起,我是一个noob ...在哪里会在下面的代码? https://github.com/tlowrimore/jquery.serialize-object/blob/master/jquery.serialize-object.js – beng

+0

@beng你试图修改这个jQuery插件?或者你在项目中使用了那个jQuery插件? –

+0

我在我的项目中使用了jQuery插件 – beng

相关问题