最近我注意到,当我们构建 jquery 表时,google chrome 开始自动完成所有动态生成的搜索栏。所有这些字段都不是表单的一部分,但 google 决定在其中建议登录值。我试图解决初始化回调并使用 autocomplete
属性,但以下解决方案都不能解决问题。我在 Firefox/Safari 中没有遇到同样的问题。任何有助于理解问题的帮助将不胜感激。
autocomplete="off"
autocomplete="false"
autocomplete="autocompleterandom"
这是我们初始化表格的方式
newTable$.DataTable({
paging: true,
pageLength: 20,
lengthMenu: [15, 30, 60, 80],
search: {
search: _this.searchValues[newTable$.data('type')]
},
initComplete: function() {
$('.section input[type="search"]').prop('name', 'autocompleterandom');
$('.section input[type="search"]').prop('autocomplete', 'autocompleterandom');
}
});
这是生成的搜索栏的样子
<div id="DataTables_Table_1_filter" class="dataTables_filter"> .
<label>Search:
<input type="search" class="" placeholder="" aria-controls="DataTables_Table_1"
name="autocompleterandom" autocomplete="autocompleterandom">
</label>
</div>
经过几个小时的研究,这似乎是 chrome 的“功能”,现在 chrome 建议在整个应用程序中保存密码:(
https://bugs.chromium.org/p/chromium/issues/detail?id=587466
最佳答案
我遇到了同样的问题,解决办法是把这两行:
$(document).ready(function(){
$("input[type='search']").wrap("<form>");
$("input[type='search']").closest("form").attr("autocomplete","off");
});
关于html - 如何在 jquery 表的搜索栏中禁用 chrome 自动完成功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54924858/