我想從表單字段數組中獲取總值,但由於某種原因,Keyup上的值不正確最後一個值從最後一個輸入值中增加而並非所有字段都是我的功能:Jquery函數循環增加值
function percentage_hardcoded_form(_formharcoded_id, _form_fieldArray, _form_hardcodedtotalWrapper, _form_hardcodedtotalId) {
var _form = $j(_formharcoded_id);
var _sumDisplay = _form.find(_form_hardcodedtotalId);
$j(_form_hardcodedtotalId).attr('disabled','disabled');
$j.each(_form_fieldArray, function(index, item) {
var _summands = item;
var sum = 0;
_form.delegate(_summands, 'change', function() {
//$j.each(function() {
var value = Number($j(this).val());
if (!isNaN(value) && !$j(this).is(_form_hardcodedtotalId)) sum += value;
//});
if(sum === 100)
{
// is 100
$j(_form_hardcodedtotalWrapper).removeClass('warning');
$j(_form_hardcodedtotalWrapper).find('.QuestionWarning').hide();
}
else
{
// isnt 100
$j(_form_hardcodedtotalWrapper).addClass('warning');
$j(_form_hardcodedtotalWrapper).find('.QuestionWarning').show();
}
_sumDisplay.val(sum);
});
});
}
percentage_hardcoded_form('#aspnetForm #questions_page_Page17', designForm_ids_1, "#question_DCWorkSplit", "#DCWorkSplit");
以下是我與工作的的jsfiddle: http://jsfiddle.net/q05k48b7/1/
更新
我已經更新了JS提琴見鏈接下面,仍然無法正常工作。
http://jsfiddle.net/q05k48b7/2/
你'sum'總是復位爲0每'onblur'事件。 –
好吧我試着把var的總和放在每個之外,但是它總是增加到總數上,但是當值減少時它不會刪除?有任何想法嗎? – neoszion
如果我願意這樣做,我將爲該組文本框分配一個公共類,並獲取每個文本框的值(通過類),然後將它們相加並分配給另一個文本框,每次發生onchange事件時 –