Использование отдельных функций для обработки увеличения и уменьшения от счетчика. Отключение будет работать только для элементов формы, но, поскольку вы представляете элементы управления счетчика с помощью изображений, вы можете вызывать .hide()
и .show()
для них или пропустить действие в вызовах до increment
и decrement
.
function increment() {
var textField = $(":text[name='qty']");
var value = Number(textField.val()) + 1;
textField.val(value);
}
function decrement() {
var textField = $(":text[name='qty']");
var value = Number(textField.val()) - 1;
textField.val(value);
if(value == 0) {
$(".dec").attr("disable", "disable");
}
}
$(document).ready(function() {
$(".inc").click(increment);
$(".dec").click(decrement);
});
Вы можете использовать этот счетчик для перемещения вверх или вниз по неупорядоченному списку, но вам придется отслеживать текущую позицию в списке. Функция decrement
уже позаботится о том, чтобы она не опускалась ниже 0. Инкремент также необходимо отключить, если вы находитесь на последнем элементе в списке. Примерно так должно работать:
if(current == $("#list > li").size() - 1) {
$(".inc").attr("disable", "disable");
}
Конечно, их необходимо снова включить, когда значение снова изменится. Но я уверен, что вы можете сделать это.