输入元素应具有自动完成属性

vin*_*deo 0 javascript php jquery google-chrome

我在控制台中收到此消息,我听不懂。请调查一下

    <!DOCTYPE html>
<html>
<head>
    <title>registration page</title>
        <script src="js/jquery.js"></script>
    <script type="text/javascript">
        $(document).ready(function(){
        $('form').submit(function(event){
    "use strict";
        var valid = true,
        message = '';    
            $('.error').remove();           
   $('form input').each(function() {
        var $this = $(this);   
        if(!$this.val()) {
            message='';
            var inputName = $this.attr('name');
            valid = false;
            message += 'Please enter your ' + inputName + '\n';
            $(this).closest('div').append('<div class="error">'+message+'</div>');           
        }
})
           if(!valid){
                event.preventDefault();
        }else{
$('form').serialize()
        }
})
})
    </script>
</head>
<body>
<form>
<div>
    <label>Name</label>
    <input type="text" name="name"><br>
</div>
<div>
    <label>File</label>
    <input type="file" name="file"><br>
</div>
<div>
    <label>password</label>
    <input type="password" name="password"><br>
</div>
<button type='submit'>Submit</button>
</form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

问题是尽管没有错误,但我一直收到此消息

[DOM] Input elements should have autocomplete attributes (suggested: "current-password"): 
Run Code Online (Sandbox Code Playgroud)

我在控制台中获得了google链接,可将我带到(更多信息:goo.gl/9p2vKq)

RIC*_*HAM 15

关闭自动完成

您可以使用以下选项来处理以下格式的错误输入元素应具有控制台通过修改抛出的自动完成属性:

<input type="password" name="password">
Run Code Online (Sandbox Code Playgroud)
  1. 将属性设置autocompleteoffat the<form><input>which:
    • 强制浏览器不存储任何数据
    • 禁用在会话历史记录中缓存表单数据
<input type="password" name="password" autocomplete="off">
Run Code Online (Sandbox Code Playgroud)
  1. 防止浏览器自动填充的另一种方法是:
    以下建议是特定于浏览器的
<input type="password" name="password" autocomplete="new-password"> <!-- For Mozilla-->
<!-- or -->
<input type="password" name="password" autocomplete="current-password"> <!-- For Chrome-->
Run Code Online (Sandbox Code Playgroud)


Sri*_*hti 8

来自Chromium 项目的设计文档

自动完成属性可帮助密码管理器推断表单中字段的用途,从而避免意外保存或自动填充错误的数据。

autocomplete您可以在需要由密码管理器管理的 HTML 元素上使用该属性来自动填充其值。属性的值autocomplete取决于您想要向密码管理器传达更多信息的字段。考虑以下示例:

  1. 当前密码字段 -autocomplete="current-password"
  2. 新密码字段 -autocomplete="new-password"
  3. 信用卡领域——autocomplete="cc-number"


dea*_*ina 5

尝试更改<input type="password" name="password"><input type="password" name="password" autocomplete="on">

通过自动完成功能,Web开发人员可以指定用户代理在填写表单字段值时是否必须提供自动协助(如果有任何权限)以及向浏览器提供有关该字段中预期信息类型的指导。

它非常强大。

  • 我不想使用自动完成。这是我的选择。为什么是强制性的? (6认同)
  • 不是,您也可以将该值设置为“关闭”。 (5认同)
  • @vinayakshahdeo我知道这是老问题/答案/评论但是如果你使用`autocomplete =“off”`它会关闭警告。该警告听起来像是必需的,但事实并非如此。你只需要指定它是打开还是关闭,默认情况下它似乎没有默认值。 (3认同)