在输入文本字段中禁用键盘回显

时间:2015-11-04 15:48:45

标签: javascript jquery html css linux

方案: 我有一个系统通过json / websocket将数据发送到网页,该页面接收此类数据并更新相关字段。

解释其工作原理的示例: - 加载页面并将焦点放在输入文本字段中(光标在其上闪烁), - 用户按下一些键,通过后端应用程序直接从串口捕获,使用它执行某些操作,创建包含捕获数据的json并将其发送到网页(websocket) - java脚本获取数据并填充相关字段。

我正在寻找一种方法来禁用键盘上的任何回显,并且只使用来自后端的数据更新页面。

只读字段不是一个选项,因为我需要在正在使用的字段中显示闪烁的光标。

建议在html / js / css上,在浏览器中甚至在Linux上阻止它。非常感谢。

2 个答案:

答案 0 :(得分:0)

不确定,但是您不希望用户在输入时看到他们的击键(获得确认)(想想在转换为*之前输入您在短暂看到该字母的密码)。然后,您的后端服务器可以随时自动覆盖文本框(一次一个字符)。或者只是添加一个方法(在变化?),在任何键输入后的几分之一秒内将退格发送到输入框(但不要在串口上捕获它)。

答案 1 :(得分:0)

我使用JQuery轻松解决了我的问题!

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script>
$(document).on("keypress", function (event) {
   if (event.which !== 0) {
      console.log('blocking keypress event');
      event.preventDefault();
   }
});
</script>
</head>
<body>
    <div>
        <label>Name: </label><input type="text" id="bef">
    </div>    
</body>
</html>

现在只有来自后端的数据会填充该页面上的字段。