我有一张表格。这是一张时间表,有点像。它有每周一天的下拉表格字段,但周日每天工作几小时。每个下拉值的值范围为0.00至12.00,增量为0.25(即0.00,0.25,0.50,0.75,1.00 ... 11.00,11.25,11.50,11.75,12.00)。我试图将一周中所选日期的总和计算到另一个文本表单字段中。这是我的JS
$(document).ready(function () {
var mon, tue, wed, thu, fri, sat, sun, total;
if ($('#form_36379').length) {
$(document).change(function () {
mon = $('#element_47').val();
tue = $('#element_49').val();
wed = $('#element_51').val();
thu = $('#element_53').val();
fri = $('#element_55').val();
sat = $('#element_57').val();
sun = $('#element_58').val();
total = parseFloat(mon) + parseFloat(tue) + parseFloat(wed) + parseFloat(thu) + parseFloat(fri) + parseFloat(sat) + parseFloat(sun);
$('#element_60').val(parseFloat(total).toFixed(2));
});
}
});
我的结果是NaN或其他一些连接值。
NaN出现在总元素中,直到所有字段都选择了值。一旦所有元素都有一个值,我就得到一个计算。示例:Mon = 2.75,Tue = 2.75,Wed = 2.75,Thu = 2.75,Fri = 2.75,Sat = 2.75,Sun = 2.75然后总场(element_60)= 56,当它应该总计19.25
有人能指出我正确的方向,我错过了什么吗?
答案 0 :(得分:0)
您可以尝试听取下拉菜单的更改事件,例如:
我有3个下拉列表
<select class="day-dropdown dropdown1">
<option value="0.00"><option>
<option value="0.25"><option>
<option value="0.50"><option>
</select>
<select class="day-dropdown dropdown2">
<option value="0.00"><option>
<option value="0.25"><option>
<option value="0.50"><option>
</select>
<select class="day-dropdown dropdown3">
<option value="0.00"><option>
<option value="0.25"><option>
<option value="0.50"><option>
</select>
JS代码
$('.day-dropdown').on('change', function(){
var dropdowns = $('.day-dropdown'),
total = 0;
$.each(dropdowns, function(index, elem){
var optionSelectedVal = $(this).find('option:selected').val();
if(optionSelectedVal){
optionSelectedVal = parseInt(optionSelectedVal);
total+= optionSelectedVal;
}
});
if(total > 0){
$('.input-class').val(total.toFixed(2));
}
});
祝福。