Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 如何在jquery表的搜索栏中禁用chrome autocomplete_Html_Google Chrome_Autocomplete - Fatal编程技术网

Html 如何在jquery表的搜索栏中禁用chrome autocomplete

Html 如何在jquery表的搜索栏中禁用chrome autocomplete,html,google-chrome,autocomplete,Html,Google Chrome,Autocomplete,最近我注意到google chrome开始自动完成我们构建jquery表时动态生成的所有搜索栏。所有这些字段都不是表单的一部分,但谷歌决定在其中建议登录值。我曾尝试解析初始化回调并使用autocomplete属性,但以下解决方案都不会奏效。我在Firefox/Safari中没有遇到过同样的问题。如果您能帮助我们理解这个问题,我们将不胜感激 autocomplete="off" autocomplete="false" autocomplete="autocompleterandom" 下面是初

最近我注意到google chrome开始自动完成我们构建jquery表时动态生成的所有搜索栏。所有这些字段都不是表单的一部分,但谷歌决定在其中建议登录值。我曾尝试解析初始化回调并使用
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建议在整个应用程序中保存密码:(

这很好用:

initComplete: function() {
                $(this.api().table().container()).find('input').parent().wrap('<form>').parent().attr('autocomplete', 'off');
            }
initComplete:function(){
$(this.api().table().container()).find('input').parent().wrap(''.parent().attr('autocomplete','off');
}

我也遇到了同样的问题,解决方案是将以下两行放在一起:

$(document).ready(function(){
  $("input[type='search']").wrap("<form>");
  $("input[type='search']").closest("form").attr("autocomplete","off");
});
$(文档).ready(函数(){
$(“输入[type='search'])。换行(“”);
$(“input[type='search'])。最近的(“form”).attr(“autocomplete”,“off”);
});

还有另一个选项。基本上,您需要等待Chrome执行自动完成,然后将输入搜索值设置为“”。250可以更改。您可以像这样为Datatable初始化添加其他设置:

initComplete: function() {
    setTimeout(() => {
        $('input[type="search"]').val('');
    }, 250)
},