简体   繁体   中英

JS Make element disabled if === 1

I want to disable the button when number is 1, using setAttribue

let element = document.createElement('div')
document.body.appendChild(element)
element.setAttribute('id', 'bet-size')

let text = document.createTextNode('1')
element.appendChild(text)

let click = document.createElement('input')
click.setAttribute('type', 'button')
click.setAttribute('id', 'decrease')
document.body.appendChild(click)
click.disabled = true

click.addEventListener('click', () => {
element.textContent = Number(element.textContent) - 1
if (element.textContent !== 1) {
click.setAttribute('disabled', true)
} else if (element.textContent > 1)
click.setAttribute('disabled', false)
})

Which way would be optimal to remove the attribute disabled when number is > 1?

Since disabled is either true or false, you can just check the value to see if its > 1 or not.

click.addEventListener('click', (e) => {
    element.textContent = Number(element.textContent) - 1
    e.target.setAttribute("disabled",(Number(element.textContent) - 1 > 1));
})

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM