如何使用JS禁用输入字段?我的设置代码未生效
解决输入字段与按钮无法禁用的问题
先修语法错误:你的else代码块里多了个反引号,这会直接导致JS脚本报错中断,所有逻辑都跑不起来。把
answerField1.style.backgroundColor = '#A90305';后面的那个`删掉。用正确的禁用写法:
- 禁用DOM元素的属性是
disabled(不是disable,你之前写错了属性名),必须赋值布尔值true,别用字符串'disabled'。 - 修正后的核心代码:
function checkAnswers(){ const answerField1 = document.getElementById('answer-field1'); const submitButton = document.getElementById('submit-button'); // 替换...为你的正确答案判断条件 if (answerField1.value === '正确答案'){ answerField1.disabled = true; submitButton.disabled = true; answerField1.style.backgroundColor = '#31CD16'; checkmark.style.display = 'block'; score ++; scoreElement.textContent = score.toString(); }else{ answerField1.style.backgroundColor = '#A90305'; crossmark.style.display = 'block'; correctAnswer.style.display = 'block'; } }
- 禁用DOM元素的属性是
额外排查项:
- 确认
checkmark、scoreElement这些变量都正确获取了DOM元素,没有未定义的情况。 - 检查
checkAnswers函数是否被正确触发(比如绑定到提交按钮的click事件,事件绑定没出错)。
- 确认
内容的提问来源于stack exchange,提问作者Amir Khoury
相关产品推荐
相关产品推荐

