我正在编码按钮来更改它们之间输入的值。
我的HTML是:
<td class="uneven">
<div class="buttonbundle up">+</div>
<input onkeyup="bundle.changeOptionQty(this, event)"
onblur="bundle.changeOptionQty(this, event)"
class="input-text qty"
id="bundle-option-1-1-qty-input"
type="text"
name="bundle_option_qty[1][1]"
value="1" />
<div class="buttonbundle down">-</div>
</td>
如果使用onclick on buttonbundle up它必须得到下一个输入的值并再次输入+1,如果它减去,它必须为-1。
我认为一定是这样的:
jQuery(document).ready(function() {
jQuery('.buttonbundle.up').on('click',function){
$val = jQuery(this).next('input').prop("value");
jQuery(this).next('input').prop("value",$val);
}
}
或类似的东西。
有什么想法吗?
答案 0 :(得分:3)
这应该适合你:
$(function() {
$('.buttonbundle.up').on('click',function(){
var input = $(this).next('input');
var x = parseInt(input.val());
input.val( x + 1 );
});
$('.buttonbundle.down').on('click',function(){
var input = $(this).prev('input');
var x = parseInt(input.val());
input.val( x - 1 );
});
});
或包含在一个功能中:
$(function() {
$('.buttonbundle').on('click',function(){
var input = $(this).parent().find('input');
var x = parseInt(input.val());
var y = $(this).hasClass('up') ? x+1 : x-1;
input.val( y );
});
});
// or
jQuery(document).ready(function() {
jQuery('.buttonbundle').on('click',function(){
var input = jQuery(this).parent().find('input');
var x = parseInt(input.val());
var y = jQuery(this).hasClass('up') ? x+1 : x-1;
input.val( y );
});
});
答案 1 :(得分:0)
您需要两个不同的处理程序
了解
jQuery('.buttonbundle.up').on('click', function() {
var $input = $(this).next('input');
var $val = parseInt($input.val(), 10);
$input.val($val+1);
});
下来
jQuery('.buttonbundle.down').on('click', function() {
var $input = $(this).prev('input');
var $val = parseInt($input.val(), 10);
$input.val($val-1);
});