JavaScript按钮禁用问题及解决方案
本文演示如何解决一个步进器中按钮禁用失效的问题。当步进器数值小于等于1时,减号按钮应该被禁用,但代码存在错误导致禁用功能失效。
问题代码及分析:
原代码中存在两个错误:
document.querySelector('butten.jian')
中的 butten
拼写错误,应为 button
。but.style.disabled = "disabled"
错误地尝试通过样式来设置 disabled
属性。disabled
是一个属性,而非样式属性,应直接使用 but.disabled = true;
来设置。修正后的代码:
function jian(ja) {
var input = ja.nextElementSibling;
var but = document.querySelector('button.jian');
var inp = input.value * 1 - 1;
if (inp <= 1) {
but.disabled = true;
} else {
but.disabled = false;
}
// ... (其余代码)
}
代码修改说明:
document.querySelector
选择器中的拼写错误。but.disabled = true;
正确地设置了按钮的 disabled
属性。 添加了 else
语句,当数值大于1时,解除按钮禁用状态,使按钮功能更完善。通过以上修改,即可确保减号按钮在数值小于等于1时被正确禁用。