有什么方法可以获得汽车的价值吗?
var inputs = document.getElementsByTagName('input');
for (var i = 0; i < inputs.length; i++) {
inputs[i].onfocus = foo;
}
function foo(){
alert(this.value);
}
手动输入输入值时:
不管输入字段的类型如何,以上代码都能正常工作并发出警报。
当浏览器自动填充输入值时:
代码在输入字段为文本类型时工作并提醒正确的值。 在密码字段的情况下,它会提醒空字符串!
这是因为浏览器的安全策略的行为吗? 或者有任何解决方法可能? 我在Chrome浏览器中试过。
这是一个有趣的问题,因为我相信你指的是Chrome中安全功能的副作用。 Chrome浏览器(也可能是其他浏览器)实际上可能不会使用自动填充的密码填充DOM,因为恶意程序员可能会编写JavaScript,试图在页面加载后从不知情的受害者中窃取自动填充的密码。 您很可能会要求用户单击提交按钮,然后才能访问该信息。 实际发生提交之前,您可能会强制该表单提交并检查该值。 如果有效,那么您可以通过在“onsubmit”中返回false来取消提交,并且您现在拥有密码。
$(document).ready(function() {
$("input")
.blur(password)
.trigger('blur');
});
function password() {
alert($(this).val())
}
DEMO
链接地址: http://www.djcxy.com/p/90415.html上一篇: Is there any way to get value of an auto
下一篇: What's the difference between the ::after and ::backdrop pseudo