我在这里搜索了有关如何启用我的停用按钮的问题'但是那个带有' removeAttribute'根本不起作用,不知道为什么。 我有这个问题 - 一旦我用递减按钮达到0,它就会被禁用,所以用户不能递减到负数,但问题是当我使用递增按钮时,递减一个停用,为什么?如果你们告诉我另一种解决这个任务的方法,我会非常感激的。关键是我现在可以减少到0以下。 这是我的HTML和JS:
var value = 1;
var plus = document.getElementById('plus');
var minus = document.getElementById('minus');
function add() {
value++;
document.getElementById('num').innerHTML = value;
}
function take() {
value--;
document.getElementById('num').innerHTML = value;
if (value == 0) {
minus.disabled = true;
} else {
minus.disabled = false;
}
}

<input type="button" value="ADD" id="plus" onclick="add();">
<input type="button" value="TAKE" id="minus" onclick="take();">
<span id="num">1</span>
&#13;
答案 0 :(得分:3)
因为单击“添加”按钮时不运行逻辑。你只能在减号按钮上进行。
我会把它分解成自己的功能
var value = 1;
var plus = document.getElementById('plus');
var minus = document.getElementById('minus');
function add() {
value++;
document.getElementById('num').innerHTML = value;
setBtnStates();
}
function take() {
value--;
document.getElementById('num').innerHTML = value;
setBtnStates();
}
function setBtnStates() {
if (value == 0) {
minus.disabled = true;
} else {
minus.disabled = false;
}
}
<input type="button" value="ADD" id="plus" onclick="add();">
<input type="button" value="TAKE" id="minus" onclick="take();">
<span id="num">1</span>
该陈述可以简化为
function setBtnStates() {
minus.disabled = value == 0;
}