, bunları toplamak jQuery kullanmak zorunda değilsiniz:
<input type="text" id="unitprice_1">
<input type="text" id="unitprice_2">
<input type="text" id="unitprice_3">
Sonra toplamını hesaplamak. İşi yapmak için dizi nesnesinde hali hazırda bulunan yöntemleri kullanabilirsiniz.
Diziler, bir .reduce() yöntemine sahiptir. Belgeleri: Array.reduce bir akümülatör geri arama olarak hareket eden bir değişken olarak bir işlevi kabul https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array/Reduce
. Akümülatör fonksiyonu 4 argümanı (önceki Değer, currentValue, index, array) kabul eder. Sadece toplamı 2'ye ihtiyacın var. Bu 2 argüman öncekiValue ve currentValue'dir.
var sampleArray = [1, 2, 3, 4, 5];
var sum = sampleArray.reduce(function(previousValue, currentValue){
return currentValue + previousValue;
});
hedef ortamı bağlantılı MDN maddede tanımlanan prototip tanımı, ECMAScript 5 veya yukarıdaki eklemeler desteklemek kullanmayan bir uyumluluk sorunu ile karşı karşıya iseniz. (Aşağıya)
if (!Array.prototype.reduce) {
Array.prototype.reduce = function reduce(accumulator){
if (this===null || this===undefined) throw new TypeError("Object is null or undefined");
var i = 0, l = this.length >> 0, curr;
if(typeof accumulator !== "function") // ES5 : "If IsCallable(callbackfn) is false, throw a TypeError exception."
throw new TypeError("First argument is not callable");
if(arguments.length < 2) {
if (l === 0) throw new TypeError("Array length is 0 and no second argument");
curr = this[0];
i = 1; // start accumulating at the second element
}
else
curr = arguments[1];
while (i < l) {
if(i in this) curr = accumulator.call(undefined, curr, this[i], i, this);
++i;
}
return curr;
};
}
Kimlikler ** benzersiz olmalıdır **! (ve evet, yapabilirsiniz) –
"id" öznitelikleri yerine 'class' niteliklerini kullanın. (Sayfada aynı kimliğe sahip birden fazla öğeye sahip olamazsınız.) –
Tamam, kimlikleri benzersiz yaparsam daha sonra nasıl yapabilirim? Lütfen un birim fiyatının yeni satır ekle'ye tıklamam gibi dinamik olduğunu ve başka bir birim fiyat oluşturduğunu unutmayın. Yani onların toplamına ihtiyacım var. – Faizan