2017-08-12 52 views
-1

我想在javascript中为一个变量指定一个数组。但我得到这样的错误。请你纠正我错过的地方。javascript指定变量内的数组

“类型错误:newItems.json是未定义”

var newItems = []; 
if ($$('.selectvals:checked').length > 0) { 
    var i=0; 
    $$('.selectvals:checked').each(function (e) { 
     var row = e.parentNode.parentNode; 
     var jsonVals = row.down('.jsonval').value; 
     var jsonPaymentVals = row.down('amount').value; 
     newItems['json'][i] = jsonVals; 
     newItems['amount'][i] = jsonPaymentVals; 
     i++; 
    }); 
} 
+0

你试图改变一个对象的属性'[I]'那不存在'newItems ['json']' – Thomas

+0

因为'newItems'是一个数组而不是一个对象。你应该使用'var newItems = {}'。 – Terry

+0

@特里我得到了同样的错误,即使我delcared像这样var newItems = {} –

回答

3

你需要初始化权,就像这样:

var newItems = { 
    json:[], 
    amount:[] 
} 
+0

谢谢阿里。当我检查控制台。它是这样的post方法..从\t postvals [] \t:[object Object] –