用加号和减号按钮输入

时间:2017-07-10 07:04:39

标签: javascript jquery

我已经使用加号和减号按钮创建了输入框,以便在单击按钮时增大和减小输入框的值。

我添加属性'已禁用'当输入值设置为零时,减去按钮,但问题是当页面加载时输入的值默认值为零,但我需要单击减号按钮一次添加属性“禁用”#39;这不是我正在寻找,我想要的是当输入的值为零时,我想减去按钮,默认情况下将属性设置为禁用,当我点击加号按钮时,它将删除'禁用'属性表单减去按钮。

即使我尝试在窗口加载按钮上添加属性,但没有这样的运气:

$( window ).load(function() {
  $('.minus').attr('disabled', true)
})

此处为jsFiddle链接。

希望你明白这一点。 在此先感谢您的帮助。

3 个答案:

答案 0 :(得分:4)

只需在输入

上添加disabled属性即可
<button disabled class="change_qty minus cursor_hover">&#45;</button>

答案 1 :(得分:1)

这是您的工作代码。我刚刚添加了一个函数,可以在document.ready和每次点击+或 - 符号时调用:

$(".plus").click(function(e) {
  e.preventDefault();
  var $this = $(this);
  var $input = $this.siblings('input');
  var value = parseInt($input.val());
  if (value < 30) {
    value = value + 1;
  } else {
    value = 30;
  }
  $input.val(value);
  checkAndDisable();
});

$(".minus").click(function(e) {
  e.preventDefault();
  var $this = $(this);
  var $input = $this.siblings('input');
  var value = parseInt($input.val());
  if (value > 1) {
    value = value - 1;
    $(this).removeAttr('disabled');
  } else {
    value = 0;
    $(this).attr('disabled', true);
  }
  $input.val(value);
  checkAndDisable();
});

$(document).ready(function() {
  checkAndDisable();
});

$("#inputField").on('change', function(){
  if($(this).val() <= 0)
    $(this).val(0);
  checkAndDisable();
});

function checkAndDisable() {
  $(".minus").removeAttr('disabled');
  if ($("#inputField").val() == 0) {
    $(".minus").attr('disabled', true);
  }
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button class="change_qty minus cursor_hover">&#45;</button>
<input type="number" style="height:26px;width:40px;text-align:center;" value="0" id="inputField">
<button class="change_qty plus cursor_hover">&#43;</button>

答案 2 :(得分:0)

使用document.ready禁用按钮

$(document ).ready(function() {
   $('.minus').attr('disabled', 'disabled')
})