2017-03-28 80 views
0

我已經在這裏搜索了關於'如何啓用我的禁用按鈕'的問題,但'removeAttribute'只是不起作用,不知道爲什麼。 我有這個問題 - 一旦我達到0與我的遞減按鈕它被禁用,所以用戶不能遞減到負數,但問題是當我使用遞增按鈕遞減一個保持禁用,爲什麼?如果你們告訴我另一種方法來解決這個問題,我會非常感激。該點是我現在允許遞減到低於0 這裏是我的HTML和JS:如何使用javascript重新啓用我一次禁用的按鈕

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>

回答

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; 
} 
+0

非常感謝你,朋友!非常感謝 :) – XxXtraCookie