Показать сообщение отдельно
  #3 (permalink)  
Старый 31.08.2012, 13:39
Новичок на форуме
Отправить личное сообщение для korish Посмотреть профиль Найти все сообщения от korish
 
Регистрация: 30.08.2012
Сообщений: 2

сделал вот так:
function AddToCart(pi, n, p, u, q){
			if (cart.getStore().data.length == 0) {
				stores.add({product_id: pi, name: n, price: p, unit: u, quantity: q, summary: p*q});
			}
			else {
				for (var i = 0; i < cart.getStore().data.length; i++) {
					var rec = stores.getAt(i);				
					if (rec.get('product_id') == pi){
						rec.beginEdit();
						rec.set('quantity', parseInt(rec.get('quantity'))+1);
						rec.endEdit();						
					}
					else {
						stores.add({product_id: pi, name: n, price: p, unit: u, quantity: q, summary: p*q});
					}
				}
						
			}
		};


теперь когда первым добавляется одинаковый товар то его количество изменяется, а если добавить такой которого нету, то он добавляется по две строки, четыре, восемь и так далее. Проблема в цикле, но как мне без него обойтись или подскажите как исправить это?
Ответить с цитированием