Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: для новичков > Сумма елементов input


Автор: galkinsasha 26.6.2012, 03:05
Здравствуйте! говорю сразу, что перерыл кучю постов но ничего не помогло.
нужно подсчитать суму всех значений инпут.

Код

 <div  class="basket_sum float_l padding_t_50">
                            <input type="text" id="kolich" onChange="ChangeB('.$value.', '.$kk.');" name="tov['.$line['id'].']" value="'.$value.'" class="margin_l_10">
 </div>
 <div  class="basket_sum float_l padding_t_50">
                            <input type="text" id="kolich" onChange="ChangeB('.$value.', '.$kk.');" name="tov['.$line['id'].']" value="'.$value.'" class="margin_l_10">
                        </div>
 <div  class="basket_sum float_l padding_t_50">
                            <input type="text" id="kolich" onChange="ChangeB('.$value.', '.$kk.');" name="tov['.$line['id'].']" value="'.$value.'" class="margin_l_10">
                        </div>


Пробую пишу

Код

function ChangeB($oldkolich, $k)
{
s=0;
$('#kolich').each(function(){

s=s+$(this).val()*1;
});
alert(s);


}


выводит значение только первого инпута
если пишу 

Код

function ChangeB($oldkolich, $k)
{
s=0;
$('.basket_sum float_l padding_t_50').each(function(){

s=s+$(this).find('input').val()*1;
});
alert(s);


}


то выводит 0
Помогите плиз! Спасибо!

Автор: galkinsasha 26.6.2012, 03:22
Решил проблему так

Код

function ChangeB($oldkolich, $k)
{
s=0;
$('input[id="kolich"]').each(function(index, zn){

s=s+$(zn).val()*1;

});
alert(s);


}


Автор: MaXL 26.6.2012, 07:53
galkinsasha, может, исполи используешь jQuery, напишешь вот так, примерно
Код

$('.basket_sum input').change(function () {
  var total_sum = 0
  $('.basket_sum input').each(function () {
    total_sum += parseInt($(this).val())
  })
  alert(total_sum);
})

Автор: Aliance 26.6.2012, 09:51
ID - уникальный идентификатор, ну как он может повторяться на странице несколько раз? Замените id на class и ваш первый код работать должен.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)