Можете ли вы использовать JQuery? Если вы можете, используйте jQuery, чтобы проверить, какие из них включены, а затем сложите их все. У меня есть рабочий образец на http://jsfiddle.net/2SfX3/
Если у вас есть html вроде:
<input type="text" class="factor" id="txtD1"/>
<input type="text" class="factor" id="txtD2" disabled="disabled"/>
<input type="text" class="factor" id="txtD3" disabled="disabled"/>
<input type="text" id="txtQuantity" />
<input type="text" id="txtTotal" />
<input type="button" id="compute" value="Compute" />
Вы можете реализовать свой jQuery следующим образом:
$(document).ready(function() {
$('#compute').click(function() {
var total = 0;
$.each($('.factor'), function(i, data) {
if (!$(this).attr('disabled')) {
total = total + parseInt($(this).val());
}
});
$('#txtTotal').val(parseInt($('#txtQuantity').val()) * total);
});
});
Выходные данные будут первым значением * количества текстового поля, потому что txtD1
является единственным активированным.
- Это предполагает, что вы имеете дело с целыми числами. Вы можете использовать
parseFloat
в противном случае.