方案: 我有一个系统通过json / websocket将数据发送到网页,该页面接收此类数据并更新相关字段。
解释其工作原理的示例: - 加载页面并将焦点放在输入文本字段中(光标在其上闪烁), - 用户按下一些键,通过后端应用程序直接从串口捕获,使用它执行某些操作,创建包含捕获数据的json并将其发送到网页(websocket) - java脚本获取数据并填充相关字段。
我正在寻找一种方法来禁用键盘上的任何回显,并且只使用来自后端的数据更新页面。
只读字段不是一个选项,因为我需要在正在使用的字段中显示闪烁的光标。
建议在html / js / css上,在浏览器中甚至在Linux上阻止它。非常感谢。
答案 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>
现在只有来自后端的数据会填充该页面上的字段。