
本文详解因 script 标签属性拼写错误(`scr` 误写为 `src`)导致 dom 元素无法获取、用户输入无法读取的问题,并提供完整修复方案与最佳实践。
在构建前端聊天机器人时,一个看似微小却极具破坏性的错误,往往会导致整个交互逻辑“静默失效”——没有报错、页面正常渲染,但点击发送后毫无反应。你遇到的正是这类典型问题:textbox.value 报 undefined 或直接抛出 Cannot read property 'value' of null,而调试时 document.getElementById('mytextbox') 返回 null。
根本原因在于 HTML 中的脚本引入写法存在拼写错误:
⚠️ 注意:scr 是无效属性,浏览器完全忽略该标签,main.js 根本未被加载!因此后续所有 JavaScript 逻辑(包括 getElementById、事件监听、sendMessage 函数)均未执行,textbox 变量实际为 undefined,调用 .value 自然失败。
✅ 正确写法应为:
立即学习“Java免费学习笔记(深入)”;
此外,为确保 DOM 元素在脚本执行时已就绪,推荐两种增强方案:










