jQuery .map()到多维对象

时间:2011-02-03 12:57:36

标签: jquery object multidimensional-array

我正在尝试从.map()获取多维对象输出,我希望获得类似{ "key" : { key : value, key : value }, "key" { key : value, key : value }, ... }的最终格式。

以下是一些代码http://pastie.org/1524749

我尝试过不同的方式没有成功,因为当我通过ajax发送它时,我在PHP中得到数组未定义

var arrData = $('#orDetColProducts .lineBottomRow').map(function(){
  intRef = $(this).find('._ref').text();
  intPrice = $(this).find('._intPrice').text();
  intQuantity = $(this).find('.existStock').val();

  if (intRef && intQuantity) {
    return '{' + intRef + ' :  { quantity : ' + intQuantity + ', price : ' + intPrice + '}' + '}';
  }
});

1 个答案:

答案 0 :(得分:2)

试试这个:

var arrData = $('#orDetColProducts .lineBottomRow').map(function() {
    var intRef = $(this).find('._ref').text();    
    var intPrice = $(this).find('._intPrice').text();
    var intQuantity = $(this).find('.existStock').val();
    var tmp = {};
    if (intRef && intQuantity) {
        tmp.intRef = { quantity: intQuantity, price: intPrice };
    }
    return tmp;
}); // chain .get() to convert to array