ie8下修改input的type属性报错的解决方法


Posted in Javascript onSeptember 16, 2014

摘要:

现在有一个需求如图所示,当用户勾选显示明文复选框时,要以明文显示用户输入的密码,去掉勾选时要变回密文,刚开始想到的就是修改输入框的type来决定显示明文还是密文,使用jQuery的attr来做试验,测试结果是chrome,Firefox,ie9+都是好的,在ie8以下就会报错,查找了下原因,ie8中是不允许修改input的type属性,最终换了种思路实现。
ie8下修改input的type属性报错的解决方法
当勾选显示明文时替换输入框为type="text",不勾选时在将输入框替换为type="password",代码如下:

<!DOCTYPE html>
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<script src="jquery.min.js"></script>
</head>
<body>
<span id="pass"><input name="password" type="password"></span><label><input type="checkbox" id="show-password">显示明文</label>
<script>
$('#show-password').click(function() {
var inp,cname,val;
if(this.checked) {
inp = $('#pass').children('input');
cname = inp.attr('name');
val = inp.val();
$('#pass').html('<input name="'+cname+'" value="'+val+'" type="text">');
} else {
inp = $('#pass').children('input');
cname = inp.attr('name');
val = inp.val();
$('#pass').html('<input name="'+cname+'" value="'+val+'" type="password">');
}
});
</script>
</body>
</html>

总结:

这篇文章并没有什么技术含量,但是这种交互还是存在的,写这篇文章主要还是考虑到ie8以下兼容性问题。如果你的项目中也有这种交互可以参考下,或者你有更好的方法可以和我一起分享。

Javascript 相关文章推荐
setTimeout和setInterval的深入理解
Nov 08 Javascript
Bootstrap+jfinal退出系统弹出确认框的实现方法
May 30 Javascript
JavaScript知识点总结(六)之JavaScript判断变量数据类型
May 31 Javascript
jQuery处理XML文件的几种方法
Jun 14 Javascript
jQuery插件FusionWidgets实现的Cylinder图效果示例【附demo源码】
Mar 23 jQuery
js+css实现打字效果
Jun 24 Javascript
django js 实现表格动态标序号的实例代码
Jul 12 Javascript
Koa从零搭建到Api实现项目的搭建方法
Jul 30 Javascript
使用Vue CLI创建typescript项目的方法
Aug 09 Javascript
使用webpack/gulp构建TypeScript项目的方法示例
Dec 18 Javascript
ES6使用 Array.includes 处理多重条件用法实例分析
Mar 02 Javascript
vue-cli3.0实现一个多页面应用的历奇经历记录总结
Mar 16 Javascript
JavaScript函数定义的常见注意事项小结
Sep 16 #Javascript
JavaScript的各种常见函数定义方法
Sep 16 #Javascript
JavaScript中合并数组的N种方法
Sep 16 #Javascript
JavaScript的null和undefined区别示例介绍
Sep 15 #Javascript
JavaScript中变量声明有var和没var的区别示例介绍
Sep 15 #Javascript
JavaScript的arguments对象应用示例
Sep 15 #Javascript
avascript中的自执行匿名函数应用示例
Sep 15 #Javascript
You might like
.htaccess文件保护实例讲解
2011/02/06 PHP
thinkphp ajaxfileupload实现异步上传图片的示例
2017/08/28 PHP
详解PHP PDO简单教程
2019/05/28 PHP
[原创]来自ImageSee官方 JavaScript图片浏览器
2008/01/16 Javascript
javascript delete 使用示例代码
2010/03/29 Javascript
js调用iframe实现打印页面内容的方法
2014/03/04 Javascript
javascript浏览器兼容教程之事件处理
2014/06/09 Javascript
基于javascript数组实现图片轮播
2016/05/02 Javascript
JavaScript String(字符串)对象的简单实例(推荐)
2016/08/31 Javascript
jstree单选功能的实现方法
2017/06/07 Javascript
Vue.js组件通信的几种姿势
2017/10/23 Javascript
angularJs在多个控制器中共享服务数据的方法
2018/09/30 Javascript
JS实现的获取银行卡号归属地及银行卡类型操作示例
2019/01/08 Javascript
使用weixin-java-miniapp配置进行单个小程序的配置详解
2019/03/29 Javascript
js实现简易计算器功能
2019/10/18 Javascript
vue路由拦截器和请求拦截器知识点总结
2019/11/08 Javascript
部署vue+Springboot前后端分离项目的步骤实现
2020/05/31 Javascript
原生js+canvas实现下雪效果
2020/08/02 Javascript
详解如何在vue+element-ui的项目中封装dialog组件
2020/12/11 Vue.js
[01:05:30]VP vs TNC 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
Python搭建FTP服务器的方法示例
2018/01/19 Python
Python对象属性自动更新操作示例
2018/06/15 Python
Django中使用haystack+whoosh实现搜索功能
2019/10/08 Python
python GUI模拟实现计算器
2020/06/22 Python
CSS3实现跳动的动画效果
2016/09/12 HTML / CSS
CSS3动画和HTML5新特性详解
2020/08/31 HTML / CSS
英国电动工具购买网站:Anglia Tool Centre
2017/04/25 全球购物
澳大利亚家具和家居用品购物网站:Zanui
2018/12/29 全球购物
英国运动风奢侈品购物网站:Maison De Fashion
2020/08/28 全球购物
境外导游求职信
2014/02/27 职场文书
怎么写好自荐书
2014/03/02 职场文书
公司合作协议书范本
2014/04/18 职场文书
投标人法定代表人授权委托书格式
2014/09/28 职场文书
技术股东合作协议书
2014/12/02 职场文书
人生感悟经典句子
2019/08/20 职场文书
Spring Cloud Netflix 套件中的负载均衡组件 Ribbon
2022/04/13 Java/Android