Javascript 重复输入';单击“设置”按钮时的值
我有两个类似的表单,输入“数量”和按钮“-”、“+” 我需要将输入的值复制到第二个表单并返回 例如:当我在第一个表单中单击“+”时,它将递增 我需要在第二种形式中得到相同的值Javascript 重复输入';单击“设置”按钮时的值,javascript,jquery,html,Javascript,Jquery,Html,我有两个类似的表单,输入“数量”和按钮“-”、“+” 我需要将输入的值复制到第二个表单并返回 例如:当我在第一个表单中单击“+”时,它将递增 我需要在第二种形式中得到相同的值 <div class="quantity"> <input class="subtraction" name="sub" type="button" value="-"> <input type="number" step="1" name="qty" value="1" c
<div class="quantity">
<input class="subtraction" name="sub" type="button" value="-">
<input type="number" step="1" name="qty" value="1" class="input-text qty text panel-quantity" size="4" />
<input class="addition" name="add" type="button" value="+">
</div>
<div class="quantity">
<input class="subtraction" name="sub" type="button" value="-">
<input type="number" step="1" name="qty" value="1" class="input-text qty text panel-quantity" size="4"/>
<input class="addition" name="add" type="button" value="+">
</div>
JS:
$(函数(){
$('.quantity')。在('单击','上。加减',函数(){
变量quantityPanel=$(“.面板数量”);
变量数量=$(this).最近('.quantity')。查找('input.qty');
var currentValue=parseInt(quantity.val());
var maxValue=parseInt(quantity.attr('max'));
var minValue=parseInt(quantity.attr('min');
if($(this).is('.addition')){
如果(maxValue&(currentValue>=maxValue)){
数量.val(最大值);
}否则{
数量.val((当前值+1));
}
}否则{
if(最小值&&(当前值0){
quantity.val((当前值-1));
}
}
数量。触发(“变更”);
});
});
我认为我可以为输入设置相同的名称,以便它们以相同的方式工作
谢谢
这是我在触发输入框中的更改之前添加$('input.qty').not(quantity).val(quantity.val());
中的示例。另外,在input.qty的onchange侦听器中添加$('input.qty')。not(this.val());
$(函数(){
$('.quantity')。在('单击','上。加减',函数(){
变量quantityPanel=$(“.面板数量”);
变量数量=$(this).最近('.quantity')。查找('input.qty');
var currentValue=parseInt(quantity.val());
var maxValue=parseInt(quantity.attr('max'));
var minValue=parseInt(quantity.attr('min');
if($(this).is('.addition')){
如果(maxValue&(currentValue>=maxValue)){
数量.val(最大值);
}否则{
数量.val((当前值+1));
}
}否则{
if(最小值&&(当前值0){
quantity.val((当前值-1));
}
}
$('input.qty')。不是(quantity.val)(quantity.val());
数量。触发(“变更”);
});
$('input.qty')。在('change',function()上{
$('input.qty')。不是(this.val($(this.val());
});
$('input.qty')。在('keyup',函数()上{
$('input.qty')。不是(this.val($(this.val());
});
});
不客气,伙计
$(function(){
$('.quantity').on('click', '.addition, .subtraction', function() {
var quantityPanel = $('.panel-quantity');
var quantity = $(this).closest('.quantity').find('input.qty');
var currentValue = parseInt(quantity.val());
var maxValue = parseInt(quantity.attr('max'));
var minValue = parseInt(quantity.attr('min'));
if($(this).is('.addition')) {
if(maxValue && (currentValue >= maxValue)){
quantity.val(maxValue);
} else {
quantity.val((currentValue + 1));
}
} else {
if (minValue && (currentValue <= minValue)) {
quantity.val(minValue);
} else if(currentValue > 0) {
quantity.val((currentValue - 1));
}
}
quantity.trigger('change');
});
});