我正在构建我几乎第一个JavaScript应用程序。我正试图让多个纺纱厂这样做:
+ [0] -
+ [3] -
+ [0] -
我有以下用于添加和减去微调器值的代码:
$('#plus').unbind('click').bind('click', function() {
var value = $('#number').val();
value++;
$('#number').val(value);
});
$('#minus').unbind('click').bind('click', function() {
var value = $('#number').val();
if (value > 0) value--;
$('#number').val(value);
});
以及微调器的以下标记:
<div data-role="controlgroup" data-type="horizontal" data-mini="true">
<p><button id="plus" data-inline="true"> +</button>
<input type="text" id="number" value="0" disabled="disabled" />
<button id="minus" data-inline="true">-</button></p>
</div>
但是我不明白如何将微调器的标识符传递给加/减函数,即我不想写多个加/减函数,每个微调器都有一个。
所有帮助表示赞赏!
答案 0 :(得分:0)
您可以执行以下操作:
$('.plus').unbind('click').bind('click', function() {
var numberControl = $(this).parent().find('.number'), value = numberControl.val();
value++;
numberControl.val(value);
});
$('.minus').unbind('click').bind('click', function() {
var numberControl = $(this).parent().find('.number'), value = numberControl.val();
if (value > 0) value--;
numberControl.val(value);
});
JsFiddle示例:
这是做什么的:
this
),请转到parent()
和find()
input
val
如果您的元素存在的次数超过1次,我建议您使用class
代替id
。如果元素在HTML中仅存在一次,则使用id
。如果它会存在多次,那么您应该使用class
。