Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用jquery在单击眼睛图标时显示和隐藏密码_Javascript_Jquery - Fatal编程技术网

Javascript 如何使用jquery在单击眼睛图标时显示和隐藏密码

Javascript 如何使用jquery在单击眼睛图标时显示和隐藏密码,javascript,jquery,Javascript,Jquery,我有要求显示和隐藏用户密码时,点击眼睛图标,所以我写了脚本,当我点击眼睛图标,只有类是改变,但密码是不可见的,再次点击斜线眼睛图标,它应该隐藏这两个方法不工作如何解决这个问题 <input type="password" name="player_password" id="pass_log_id" /> <span toggle="#password-field" class="fa fa-fw fa-eye field_icon toggle-password">&

我有要求显示和隐藏用户密码时,点击眼睛图标,所以我写了脚本,当我点击眼睛图标,只有类是改变,但密码是不可见的,再次点击斜线眼睛图标,它应该隐藏这两个方法不工作如何解决这个问题

<input type="password" name="player_password" id="pass_log_id" />

<span toggle="#password-field" class="fa fa-fw fa-eye field_icon toggle-password"></span>

<script>
$("body").on('click','.toggle-password',function(){
    $(this).toggleClass("fa-eye fa-eye-slash");

    var input = $("#pass_log_id").attr("type");

    if (input.attr("type") === "password") {
        input.attr("type", "text");
    } else {
        input.attr("type", "password");
    }
});
</script>

$(“正文”)。在('单击','上。切换密码',函数(){
$(this.toggleClass(“fa-eye-fa-eye-slash”);
var输入=$(“#通过日志_id”).attr(“类型”);
if(input.attr(“type”)=“password”){
input.attr(“类型”、“文本”);
}否则{
输入属性(“类型”、“密码”);
}
});

您的
输入实际上是字符串。检查控制台,您应该看到字符串没有方法
attr()
,因为您将
$().attr()
分配给
输入

$(“body”)。在('单击','上。切换密码',函数(){
$(this.toggleClass(“fa-eye-fa-eye-slash”);
var输入=$(“#通过日志_id”);
if(input.attr(“type”)=“password”){
input.attr(“类型”、“文本”);
}否则{
输入属性(“类型”、“密码”);
}
});

显示/隐藏

您必须删除var
.attr(“type”)从您的
var输入=$(“#pass_log_id”).attr(“type”)
您还可以使用
三值运算符
键入文本
密码
之间进行切换,使操作更加优雅:

$(文档).on('单击','切换密码',函数()){
$(this.toggleClass(“fa-eye-fa-eye-slash”);
var输入=$(“#通过日志_id”);
input.attr('type')=='password'?input.attr('type','text'):input.attr('type','password'))
});

请更换

var输入=$(“#通过日志_id”).attr(“类型”)

var输入=$(“#通过日志_id”)

您需要的是元素而不是属性,

Show
函数myFunction(){
var x=document.getElementById(“myInput”);
如果(x.type==“密码”){
x、 type=“text”;
}否则{
x、 type=“密码”;
}
}
HTML代码

<input type="password" placeholder="Password" id="pwd" class="masked" name="password" 
/>
<button type="button" onclick="showHide()" id="eye">
   <img src="eye.png" alt="eye"/>
 </button>

可能重复的可能重复的工作代码示例@Manasi plz告诉我我的code@MSp您正在执行**.attr(“键入”);“2次。**1) var输入=$(“#通过日志_id”).attr(“类型”);和2)如果(input.attr(“type”)==“password”),而此代码可能会回答问题,提供有关此代码回答问题的原因和/或方式的其他上下文将提高其长期价值。@adiga感谢您的时间
$(document).ready(function () {
    $("#eye").click(function () {
        if ($("#password").attr("type") === "password") {
            $("#password").attr("type", "text");
        } else {
            $("#password").attr("type", "password");
        }
    });
});