有没有办法阻止浏览器在按下向下键时显示先前输入的字段值?
如果这是不可能的,我的另一个问题是按下向下键,将显示先前输入的值列表,按下 TAB 键,将选择列表中当前突出显示的值并将设置为字段的值。我不想要这个,我只想将焦点传递给下一个输入元素而不选择任何值。
有没有办法覆盖浏览器的行为?尽管 jQuery 解决方案也很好,但在 play javascript 中的解决方案是首选。谢谢!
有没有办法阻止浏览器在按下向下键时显示先前输入的字段值?
如果这是不可能的,我的另一个问题是按下向下键,将显示先前输入的值列表,按下 TAB 键,将选择列表中当前突出显示的值并将设置为字段的值。我不想要这个,我只想将焦点传递给下一个输入元素而不选择任何值。
有没有办法覆盖浏览器的行为?尽管 jQuery 解决方案也很好,但在 play javascript 中的解决方案是首选。谢谢!
只需添加自动完成属性
<input type="text" autocomplete="off" />
autocomplete="off"
您可以通过添加到输入标签来禁用自动完成功能。MDN 参考
例子
<input type="text" name="email" value="" autocomplete="off" />
有关浏览器兼容性,请参阅此Stack Overflow 帖子。
html代码
<input type="text" autocomplete="off" id="password-field" class="form-control" name="multi_user_pin" placeholder="Type your PIN here"/>
jquery code
$('#password-field').on('input keydown',function(e) {
if(e.keyCode == 8 && $(this).val().length==1) {
$(this).attr('type', 'text');
$(this).val('');
}
else{
if ($(this).val() !== '') {
$(this).attr('type', 'password');
} else {
$(this).attr('type', 'text');
}
}
});
此代码适用于密码字段,以防止在所有浏览器中记住其历史记录