如何实现点击Bootstrap按钮或按回车键均可提交聊天请求
解决聊天机器人输入框回车提交问题
你的问题核心是事件绑定对象错误——回车操作是在输入框(#chat-input)上触发的,而非按钮,所以给按钮绑定键盘事件完全不会生效。
正确实现方案
我们需要给输入框绑定键盘事件,检测是否按下回车键(键码13),触发和点击按钮一致的提交逻辑。为了避免代码冗余,建议把提交逻辑封装成独立函数:
// 封装提交逻辑,复用代码 function submitChatContent() { const inputValue = $("#chat-input").val().trim(); if (!inputValue) return; // 空内容不提交 // 这里写入原按钮点击时的提交逻辑 // ....... } // 按钮点击触发提交 $("#button").click(submitChatContent); // 输入框回车触发提交 $("#chat-input").keyup(function(event) { // 检测是否按下回车键 if (event.keyCode === 13) { submitChatContent(); // 可选:提交后清空输入框 $("#chat-input").val(""); } });
你的修改无效原因
- 给按钮绑定
keyup事件:按钮不属于可聚焦的输入类元素,不会响应键盘输入事件,绑定完全无效。 - 用
on('click')绑定按钮:这只是换了一种点击事件的绑定写法,和原click()效果一致,根本没处理回车触发的逻辑,自然无法解决问题。
内容的提问来源于stack exchange,提问作者coopdog218
相关产品推荐
相关产品推荐

