修改输入框位置 php,JavaScript |
您所在的位置:网站首页 › js动态修改input编辑属性 › 修改输入框位置 php,JavaScript |
js动态修改input输入框的type属性(实现方法解析) 需要实现的效果:一个输入框,当输入框未获得焦点的时候,value 值为 “密码”;当输入框失去焦点的时候,输入内容显示为”*****” 我们很直接会想到下面的js $(“#showPwd”).focus(function(){ $(this).attr(‘type','password'); }); 发现并没有实现预期效果,出现 uncaught exception type property can't be changed 错误,查看jQuery 1.42源码 1488 行 // We can't allow the type property to be changed (since it causes problems in IE) if ( name === “type” && rtype.test( elem.nodeName ) && elem.parentNode ) { jQuery.error( “type property can't be changed” ); } jQuery 修改不了用源生的JS呢? $(“#pwd”).focus(function(){ $(“#pwd”)[0].type = ‘password'; $(“#pwd”).val(“”); }); 发现在FF下可以修改并将密码输入框type 修改为 “password” 并将 value设置为空,而IE下却提示无法得到type属性,不支持该命令。 弹出 type 看看真的无法得到吗? $(“#showPwd”).focus(function(){ alert($(“#showPwd”)[0].type); $(“#showPwd”)[0].type = ‘password'; $(“#showPwd”).val(“”); }); 发现弹出text ,原来不是无法得到,只是IE下不能修改。 因此,我们想到可以先remove然后再生成一个type是password的密码输入框。 下面type为password的输入框 $(“#showPwd”).focus(function() { var text_value = $(this).val(); if (text_value == this.defaultValue) { $(“#showPwd”).hide(); $(“#password”).show().focus(); } }); $(“#password”).blur(function() { var text_value = $(this).val(); if (text_value == “”) { $(“#showPwd”).show(); $(“#password”).hide(); } }); 最终效果: 当输入框获得焦点的时,输入的内容显示为“****”;当失去焦点的时,内容为空时显示“密码”。相关阅读: MySQL配置文件my.cnf优化详解(mysql5.5) 判断php数组是否为索引数组的实现方法 c#模拟银行atm机示例分享 WindowsX系统桌面卡死没有反应难道只有强行关机吗 AspNet中使用JQuery上传插件Uploadify详解 Android 轻松实现图片倒影效果实例代码 ASP.NET自动为URL加上超链接的代码 ashx中使用session的方法(获取session值) js实现Select下拉框具有输入功能的方法 jQuery中$.extend()用法实例 使用aspose.word 第三方的插件实现导出word Linux系统下使用Flacon导入CD音频文件中的歌曲 Java用Cookie限制点赞次数(简版) Win10预览版或将单独更新 不局限于完整版本推送 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |