一般登陆之后浏览器会询问是否记住密码,如果把密码记住在浏览器上,下次登陆的时候浏览器会把用户名和密码自动填充到登录页面。前段时间服务站平台的员工账号模块提测后,测试提出360浏览器记住密码后会自用把登陆账号和密码填充到添加账号页面和修改账号页面(部分其他浏览器也会有该问题),经过本地测试后发现确实存在该问题。 类似于这样:

  从用户的角度来说 这么整肯定不行,即使是浏览器的问题。通过组内人员的一步一步探索最终找到解决办法:

1. 通过网上搜索 发现有些文章是提供设置设置文本框的autocomplete属性为off,根据该方法修改后发现并没有解决问题,原来该属性的含义代表是否让浏览器自动记录之前输入的值。

2. 从一篇文章上看到 “大部分浏览器都是根据表单域的type="password"来判断密码域”,也给出了解决办法,“动态改变文本框”。

  在页面加载时不让它是密码框,改成文本框,果然密码就匹配不上了。当该密码框获取焦点后改变他的type属性  this.type="password",这种写法可以实现功能。但使用IE浏览器测试时发现在IE8及一下的浏览器中this.type会报错。该方法还是不能彻底解决这个问题。

3. 在文本框外面嵌套标签

  1. <label id="password2"><input class="txt w-200" value="" type="text" id="SecondPwd" /></label>

  可以在文本框获取焦点之后直接改变label标签的html

  1. $("#SecondPwd").live('focus', function () {
  2. if ($(this).attr('type') == 'text') {
  3. /*改变label标签的html*/
  4. $('#password2').html('<input class="txt w-200" value="" type="password" id="SecondPwd" />');
  5. /*标签获取焦点*/
  6. $('#SecondPwd').focus();
  7. }
  8. })

  这种写法在IE8及以下浏览器下面都可以实现效果,但经过后期测试又发现在360急速模式下面仍然能够填充上用户名和密码,还得找其他的解决办法

4. 在使用第五种方法的之前,考虑把所有的框都先设为只读,然后在获取焦点后设置成可写,失去焦点后在只读,但密码框设置为可写之后仍会匹配上。

5. 加载一个显示的文本框和隐藏的密码框

  1. <label id="password1">
  2. <input class="txt w-200 fl" value="" type="text" name="txtPwd" id="txtPwd" />
  3. <input class="txt w-200 fl" value="" type="password" name="Pwd" id="Pwd" style="display: none" readonly="true" />//为了防止隐藏的文本框被匹配上 先设置为只读
  4. </label>

  当文本框再获取焦点之后

  1. $("[name=txtPwd]").live('focus', function () {
  2. /*当前文本框隐藏*/
  3. $(this).hide();
  4. /*隐藏的密码框显示并且获取焦点 只读属性去掉*/
  5. $('#pwd1').show().attr('readonly', false).focus();
  6. })

  如果大家也遇到这种问题可以参考一下这种方法,或者谁有更好的方法可以分享一下。

记住密码后,密码框Password会自动带出数据的更多相关文章

  1. Chrome浏览器记住密码后input框黄色背景且背景图片不显示的问题

    Chrome浏览器记住密码后再进入登录页后,输入框背景颜色变为黄色,字体颜色变成#000黑色,且添加的背景图片也那不显示了,进入审查元素后,发现浏览器默认给输入框添加了样式,并且无法通过importa ...

  2. 用友CDM系统“货位间商品移库单(一步)”表体增加“货位可用数量”字段,根据表头的选择的货位自动带出数值

    系统控制台——业务单据定制——货位间商品移库单(一步) 明细字段——增加“可销数量”字段. 然后修改明细字段的“商品编号”自定义查询方案. 增加自定义资料检索方案hwyksp SQL: select ...

  3. PyCharm新建.py文件时自动带出指定内容

    如:给Pycharm加上头行  # coding:utf-8File—Setting—Editor--Code Style--File and Code Templates--Python Scrip ...

  4. XSS攻击:获取浏览器记住的明文密码

    作者:余弦(@evilcos) 0x01. XSS获取明文密码的多种方式 我已经感受到Web潮流带来的巨大革新,尤其是最近HTML5越来越火.浏览器们在客户端瓜分着这个Web OS,只要是对用户体验好 ...

  5. jenkins之从0到1利用Git和Ant插件打war包并自动部署到tomcat(第一话):初次启动jenkins,输入给定密码后登录失败问题解决

    Jenkins是一个持续集成平台,它能够从git等源码管理服务器拉取代码.打包并发布到tomcat等中间件,只要配置好相关插件,就可以做到项目的自动化构建.部署,不论是对开发来说监控代码质量,还是对测 ...

  6. chorme 浏览器记住密码后input黄色背景处理

    使用chrome浏览器选择记住密码的账号,输入框会自动加上黄色的背景,有些设计输入框是透明背景的,需要去除掉这个黄色的背景: 方法1:阴影覆盖 input:-webkit-autofill { -we ...

  7. chorme 浏览器记住密码后input黄色背景处理方法(两种)

    使用chrome浏览器选择记住密码的账号,输入框会自动加上黄色的背景,有些设计输入框是透明背景的,需要去除掉这个黄色的背景: 方法1:阴影覆盖 input:-webkit-autofill {   - ...

  8. css 修改placeholder字体颜色字体大小 修改input记住账号密码后的默认背景色

     壹 ❀ 引 本来这个阶段的项目页面都是给实习生妹子做的,我只用写写功能接接数据,但这两天妹子要忙翻译,这个工作阶段也快结束了导致有点慌,只能自己把剩余的几个小页面给写了. 那么做页面的过程中,UI也 ...

  9. chorme浏览器记住密码后input黄色背景处理方法总结(三种)

    问题分析 正常情况: 记住密码后访问: 解决方法 方法1:阴影覆盖input:-webkit-autofill { -webkit-box-shadow: 0 0 0 1000px white ins ...

随机推荐

  1. jQuery和CSS的拍摄效果

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. 项目中多条数据保存的json实例

    //js代码function checkCode(num){ var typeid = $("#typeid").val(); if(typeid == "") ...

  3. Respond.js-----20150415

    Respond.js让IE6-8支持CSS3 Media Query. Bootstrap里面就引入了这个js文件,从名字看出来是自适应的兼容.打开IE看了一下,效果挺好的,自适应的效果挺好的.Res ...

  4. JS与IOS、安卓的交互

    最近做的项目中涉及到了与安卓和ios的交互问题,对于一个新手来说,多多少少会有点迷糊.在调用安卓和ios的callback回调时,很轻松的就调用成功了,而且,步骤也不那么繁琐.刚开始,只知道那样使用可 ...

  5. substring substr slice 区别

    1. substring(start,end)  返回指定索引区间的字串,不改变原字符串 start 必需,开始位置的索引,一个非负的整数 end  可选,结束位置的索引(不包括其本身),如果未设置, ...

  6. 离线web-ApplicationCache

    https://www.html5rocks.com/en/tutorials/appcache/beginner/ http://diveintohtml5.info/offline.html#fa ...

  7. 纯 CSS 创作一个表达怀念童年心情的条纹彩虹心特效

    效果预览 在线演示 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/QxbmxJ 可交互视频教 ...

  8. rom bist scripts

    rom bist 的input 有rom_content file .校验rom还坏,主要通过signature比较.signature跟rom content file 一一对应的. rom bis ...

  9. Python Importlib模块与__import__详解

    Importlib模块与__import__都可以通过过字符串来导入另外一个模块,但在用法上和本质上都有很大的不同. 以一个例子为证: 以下为我的工程目录结构: lib/test.py: name = ...

  10. windowsServer2008搭建域服务器

    为什么要搭建域? 工作组的分散管理模式不适合大型的网络环境下工作,域模式就是针对大型的网络管理需求设计的,就是共享用户账号,计算机账号和安全策略的计算机集合.域中集中存储用户账号的计算机就是域控器,域 ...