javascript - 使用 if 和 setAttribute 禁用按钮
问题描述
如果元素的数量为 1,我希望我的减少按钮被禁用。按钮不应该是 -1。但是例如应该使数字2变为1。
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.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)
})
我需要帮助的地方是如何使用 setAttribute 正确编写 if 语句(也许我的另一个按钮上的 removeAttribute 会增加数字?)
解决方案
您需要与 进行比较"0"
,而不是1
在禁用时进行比较。它必须是一个字符串,因为您===
用于比较。
要启用该按钮,您必须使用removeAttribute
.
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')
click.value = "-";
document.body.appendChild(click)
click.addEventListener('click', () => {
element.textContent = Number(element.textContent) - 1
if (element.textContent === "0") {
click.setAttribute('disabled', true)
} else if (element.textContent > 1)
click.removeAttribute('disabled')
})
let increase = document.createElement('input')
increase.setAttribute('type', 'button')
increase.id = 'increase';
increase.value = '+';
document.body.appendChild(increase);
increase.addEventListener('click', () => {
element.textContent = Number(element.textContent) + 1
if (element.textContent === "0") {
click.setAttribute('disabled', true)
} else if (element.textContent > 1)
click.removeAttribute('disabled')
})
推荐阅读
- ios - iOS应用程序进入后台并在后台运行了几个小时而没有杀死
- azure - azure aks 与 jenkins 同时部署到多个 k8s 集群
- javascript - Compare 2 Arrays of Objects and Remove Duplicates
- php - 在php中使用数组和内爆函数的自定义查询
- git - 从特定提交开始创建一个新项目并保留历史记录
- swift - 试图理解这个警告:[UITabBarItem]!使用 '!' 这里已弃用,将在未来的版本中删除
- javascript - 传单地图未从 Web 服务返回 JSON 数据
- c - 替换嵌套 for 循环的宏
- jquery - 我想为 utils 对话框中的按钮添加 id
- react-native - 如何在我的平面列表中实现动画?