如何防止LastPass(chrome扩展)填写我的输入字段 - 使LastPass忽略我的输入字段

时间:2014-04-14 08:57:32

标签: javascript html angularjs input lastpass

我想忽略上一次传递以填写我的输入字段,我正在使用AngularJS和html5扩展自动填充下面的输入字段。

<input id="search-publishers-box" type="text" placeholder="Search Publishers" data-ng-model="publishersSearchQuery.name" class="search-field-text" autocomplete="off"/>

我应该怎么做以防止最后一次传递,我试图更改占位符,模型,添加autocomplete =“off”更改输入字段的id

他们没有为我工作。

有什么建议吗?

4 个答案:

答案 0 :(得分:3)

将此属性放在您希望没有LP更改的输入元素中。

data-lpignore="true"

答案 1 :(得分:2)

这是我对此的看法,通常我采取的措施来解决自动填充问题(是的,它们会模糊不清,但确实会发生) - 我通常会看到字段中的变化。由于您正在使用AngularJS,因此使用$watch非常容易,或者如果您正在使用jQuery,请使用.change

然后,只要一次更改多个字符,您就可以假设其自动填充而不是某人打字。

请注意,如果有人决定粘贴到该字段中,则会中断。

另一种解决方法是,只有在keypress时才允许对字段进行更改。

编辑 Here's a fiddle

答案 2 :(得分:1)

尝试使用type =“search”代替..这是一种无效的类型...它将回退到输入文字......

Stop LastPass filling out a form

答案 3 :(得分:0)

对我来说,@ nawlbergs先前的回答有助于解决此问题。 data-lpignore="true"已无济于事(可能他们已更新其逻辑,因为该解决方案也不再在其常见问题解答中出现)。

LastPass似乎只能与带有type="text"type="password"的输入一起使用以填充密码(这是可以在LastPass条目的表单字段中配置的唯一输入类型)。每当您使用有效的其他类型(不建议使用@nawlbergs)但不是"text"时。

也就是说,type="search"以及其他可能的有效type值都会有所帮助。只是type="search"具有类似text的行为,并且可以在任何地方自由使用: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/search