Применить функцию к одному элементу
Здравствуйте.
Подскажите как применить функцию к одному элементу. Сейчас скрипт выглядит так:
$('input[name='+id+']').each(function(){
...
}
Но очевидно что инпут такой на странице только один. Не хочу говнокодить, поэтому прошу вашей помощи. В гугле все перерыл, через get() не работает, через find() тоже. Ну и полный скрипт на всякий случай приложу. Опыта очень мало, сильно тапками не кидайте.
// Меняем значение input кнопками + и -
function change_quantity(id, quantity) {
var current = parseInt($('input[name='+id+']').val());
if (isNaN(current)) current = 0;
$('input[name='+id+']').val(current+quantity);
recalc(id);
}
// Валидация введенного значения
function recalc(id) {
$('input[name='+id+']').each(function(){
var current = $(this).val();
var min = 0;
var step = $(this).attr('step');
var max = $(this).attr('max');
var avalible = $('#v-sin > input').prop('checked');
// Округляем кратно step (количества товаров в упаковке)
current = Math.ceil(current/step)*step;
if (current < 0) current = 0;
if (current > max && avalible) current = max;
$(this).val(current);
})
}
|
function recalc(id) {
var el = $('input[name='+id+']');
var current = el.val();
var min = 0;
var step = el.attr('step');
var max = el.attr('max');
var avalible = $('#v-sin > input').prop('checked');
// Округляем кратно step (количества товаров в упаковке)
current = Math.ceil(current/step)*step;
if (current < 0) current = 0;
if (current > max && avalible) current = max;
el.val(current);
}
|
ооооо, вот это я тупой конечно...
огромное вам спасибо |
| Часовой пояс GMT +3, время: 14:06. |