【发布时间】:2016-05-23 15:39:27
【问题描述】:
我有一个带有最小值和最大值的输入类型数字元素。防止默认功能我已将其自定义为使用单独的输入。
我不知道如何从包含 min 和 max 属性的输入元素中触发最大值。虽然我给出了最大范围,但加号超过了值。
$('.plus').on('click', function(e) {
var val = parseInt($(this).prev('input').val());
$(this).prev('input').attr('value', val + 1);
});
$('.minus').on('click', function(e) {
var val = parseInt($(this).next('input').val());
if (val !== 0) {
$(this).next('input').attr('value', val - 1);
}
});
body {
background-color:#eeeeee;
margin: 40px;
}
.minus,
.plus {
border: none;
padding: 10px;
width: 40px;
font-size: 16px;
}
input[type=number].quantity::-webkit-inner-spin-button {
-webkit-appearance: none;
margin: 0;
}
.quantity {
padding: 10px;
border: none;
width: 40px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="quantity-block">
<input class="minus" type="button" value="-">
<input type="number" value="1" class="quantity" size="4" min="1" max="5"/>
<input class="plus" type="button" value="+">
</div>
【问题讨论】:
-
有一个叫@JohnSlegers 的白痴编辑所有帖子和答案,也许是为了增加徽章。我回滚所有版本。
-
@MarcosPérezGude:我一直在提高这个问题和其他各种问题的可读性、缩进和间距。为什么这是一件坏事?这怎么让我成为一个白痴,到底是什么?!不,我这样做不是为了“徽章”……我想你可以称我为“可读性纳粹”(没有更好的术语)。