我有一个包含很多输入=文本的表单,我有两个图像( - ,+)我想增加或减少以前的输入文本。我不想在输入文本中添加一个id,因为我可以在输入文本和减号或加号中添加很多这一行。 使用我的代码,减号按钮可以工作,但加号按钮不是为什么?
我的jQuery代码
$('.minus').click(function(){
var intRegex = /^\d+$/;
var floatRegex = /^((\d+(\.\d *)?)|((\d*\.)?\d+))$/;
var num = $(this).prev('input').val();
if(intRegex.test(num) || floatRegex.test(num)) {
if (num>0){
$(this).prev('input').val(num-1);
}
}
else{
//non è un numero
}
});
$('.plus').click(function(){
var intRegex = /^\d+$/;
var floatRegex = /^((\d+(\.\d *)?)|((\d*\.)?\d+))$/;
var num = $(this).prev.prev('input').val();
if(intRegex.test(num) || floatRegex.test(num)) {
$(this).prev.prev('input').val(num+1);
}
else{
//non è un numero
}
});
HTML:
<input type="text" name="qta" id="qta" style="width:50px;"/>
<img src="img/shop/meno.jpg" alt="" class="minus" style="cursor:pointer"/>
<img src="img/shop/piu.png" alt="" class="plus" style="cursor:pointer"/>
答案 0 :(得分:3)
var num = $(this).prev().prev('input').val();
和
$(this).prev().prev('input').val(num+1);
你错过了()
两次
无论如何,我会将每个输入和图像包装在自己的包装器中,我会找到$(this).parent().find('input')
的输入
答案 1 :(得分:1)
用这个去上一个
var num = $(this).prev().prev('input').val();
如果你想下次使用这个
var num = $(this).next().next('input').val();
答案 2 :(得分:0)
如果您只有一个输入,则可以使用该输入的ID
$('#qta').val(num+1)
和
$('#qta').val(num-1)