onclick multiple times javascript



所以我制作了一个表单,其中眼睛上有一个图像,点击时应该显示密码,再次点击时应该隐藏密码。当它点击时,我更改了img的src属性,并更改了输入的类型

if(img.src = 'images/eye1.png'){
img.src = 'images/eye2.png';
password.type = 'text'
}

如果img.src是eye2,那么在我第一次点击后,它会返回到原始

else if(img.src = 'images/eye2.png') {
img.src = 'images/eye1.png';
password.type = 'password'
}

我也尝试过其他方法,但在第一次点击后它什么都没做,我找不到解决方案。请帮忙:(

问题是您没有验证任何相等的条件,因为您必须使用"="(相等(而不是"="(分配(

// This line
if(img.src == 'images/eye1.png'){
img.src = 'images/eye2.png';
password.type = 'text';
// and this one
} else if(img.src == 'images/eye2.png') {
img.src = 'images/eye1.png';
password.type = 'password';
}

可以在if中为变量赋值。这就是为什么你没有看到错误的原因。我建议你把变量放在==的右边。因为当你试图给文本赋值时,控制台会显示一个错误,因为文本不是左值

示例:

if('images/eye2.png' == img.src) {
// your code
}

最新更新