输入中的Chrome现金值

时间:2016-01-18 10:26:54

标签: javascript jquery html html5 google-chrome

我有一个注册页面。我有一个表格,其中包含2个必填项 - 电子邮件和密码。

<div class="row row_registration">
    <label for="email">Электронная почта</label>

    <div class="row-w">
        <input id="email" name="email" class="text v" required="required" type="email" value="">
    </div>
</div>
<div class="row row_registration">
    <label for="password">Пароль</label>

    <div class="row-w">
        <input id="password" name="password" class="text eq" minlength="7" required="required" type="password" value="" maxlength="14">
    </div>
</div>

我也有一个提交按钮(惊喜!),它有一个属性&#34;禁用&#34;。

var checkRequiredInput = function(){
    if($("#email").val().length > 0 && $("#password").val().length > 0) {
        $(".registration__button button:submit").attr("disabled", false);
    }
};

我在输入上绑定了keyup。和!文档准备好后我运行此功能。

checkRequiredInput();
$("#email, #password").on("keyup", function(){
    checkRequiredInput();
});

但是我在这个页面上有一些值谷歌浏览器放入我的输入并且它发生.. 何时?

因为当我运行它时我的功能没有任何改变文件准备好了。我明白,在这一刻输入是空的。由于互联网连接不同,我无法使用setTimeOut。

当chrome执行此操作时,是否存在任何事件或其他事件。

1 个答案:

答案 0 :(得分:1)

  1. 根据惯例显示 - 输入的自动填充和现金值不相同。
    所以,即使我添加了属性automplete,我的问题仍然存在。
  2. 可以合并2个事件并绑定keyupchange。它可以工作但只在下一个动作之后显示设计更改(禁用按钮):点击,聚焦,模糊,按键等等。好多了,但仍然不够好。
  3. 浏览器如何设置值的位置?通过type和用户之前在此网站上的操作。我无法改变输入类型。
  4. 我也知道https不允许浏览器使用自动填充功能。只有铁杆。
  5. 我是如何解决我的问题的:html5有很多帮助(我在输入中添加了许多不同的引用),所以设计师和我决定删除disabled。其余的将自动发生。谢谢,HTML5!