2014-11-19 3 views
0

Im пытается сохранить некоторые значения от полей ввода до моего db после того, как ive использовал js, чтобы суммировать их все. Я хочу сохранить как входы, так и общую сумму и theres, когда мой код сломается. Все мои входы пустые после запуска autosum и его единственная сумма полей, которые сохраняются в db. Я не уверен, как это исправить, я надеюсь, что у кого-то есть решение. Вот мой код.Сохранение входов в db после автоматической суммы

Если это глупый способ сделать это, пожалуйста, покажите мне правильный путь!

<td>   
    <div class="form-group"> 
    {{ Form::text('report_mon_time', Input::old('report_mon_time'), array('name' => 'time', 'class' => 'form-control-s', 'onblur' => 'findTotalTime()')) }} 
    </div> 
</td> 
<td> 
    <div class="form-group"> 
    {{ Form::text('report_tue_time', Input::old('report_tue_time'), array('name' => 'time', 'class' => 'form-control-s', 'onblur' => 'findTotalTime()')) }} 
    </div> 
</td> 
    <div class="form-group"> 
    {{ Form::text('report_tot_time', Input::old('report_tot_time'), array('id' => 'tot_time','class' => 'form-control-s')) }} 
</div> 

<script> 
function findTotalTime(){ 
    var number = document.getElementsByName('time'); 
    var arr = number; 
    var tot=0; 

    for(var i=0;i<arr.length;i++){ 
     if(parseInt(arr[i].value)) 
      tot += parseInt(arr[i].value); 
    } 
    document.getElementById('tot_time').value = tot; 
} 
</script> 
+1

просьба предоставить исходный HTML не код сервера, если вы хотите, чтобы устранить JavaScript. Также укажите любые ошибки, которые могут возникнуть в вашей консоли браузера. – charlietfl

ответ

0

Изменить

for(var i=0;i<arr.length;i++){ for(var i=0;i<arr.length;i++){ 
    if(parseInt(arr[i].value)) 
     tot += parseInt(arr[i].value); 
} 

Для

for(var i=0;i<number.length;i++){ 
    if(parseInt(number[i].value)) 
     tot += parseInt(number[i].value); 
} 
+0

Вы можете потерять var arr = number; а также – Billy

+0

typo выше, я знаю, что вы не поставили цикл for в два раза. – Billy