Измените:
['qty[i]']
на:
['qty[' + i + ']']
и аналогичные для других, чтобы работать выше.Я предлагаю вам изменить <input>
элементов для предоставления идентификатора, примерно так:
<input type="text" id="qty[<?php echo $i; ?>]" name="qty[<?php echo $i; ?>]" value=""/>
Тогда вместо:
quant[i] = document.x.elements['qty[i]'].value;
используйте:
quant[i] = document.getElementById(['qty[' + i + ']']).value;
Обратите внимание, что вы получите строку, поэтому я полагаю, что вы хотели бы использовать parseInt
и / или parseFloat
:
то есть что-то вроде этого:
quant[i] = parseFloat(document.getElementById(['qty[' + i + ']']).value);
Также обратите внимание, что вы можете рассмотреть возможность проверки на ошибки (например, если кто-то вводит "qqaacc" в поле ценывместо "123,45").