【发布时间】:2022-10-23 18:04:42
【问题描述】:
我有 3 个不同的密码输入:
--Current Password Input
<input asp-for="ChangePassword.OldPassword" class="form-control" id="currentPassword" required autofocus />
<button class="btn btn-light shadow-none ms-0" type="button" id="toggleCurrentPassword" tabindex="99"><i class="mdi mdi-eye-outline"></i></button>
--New password input
<input asp-for="ChangePassword.NewPassword" class="form-control" id="newPassword" required autofocus />
<button class="btn btn-light shadow-none ms-0" type="button" id="toggleNewPassword" tabindex="99"><i class="mdi mdi-eye-outline"></i></button>
--Confirm password input
<input asp-for="ChangePassword.ConfirmPassword" id="confirmPassword" class="form-control" required autofocus />
<button class="btn btn-light shadow-none ms-0" type="button" id="toggleConfirmPassword" tabindex="99"><i class="mdi mdi-eye-outline"></i></button>
如您所见,每个按钮都有一个按钮,当用户单击时,我删除类型密码,如果用户再次单击,我再次添加它。
我的脚本来做到这一点:
$('#toggleCurrentPassword').click(function() {
if ($('#currentPassword').attr('type') === "password") {
$('#currentPassword').attr('type', 'text');
} else {
$('#currentPassword').attr('type', 'password');
}
})
$('#toggleNewPassword').click(function() {
if ($('#newPassword').attr('type') === "password") {
$('#newPassword').attr('type', 'text');
} else {
$('#newPassword').attr('type', 'password');
}
})
$('#toggleConfirmPassword').click(function() {
if ($('#confirmPassword').attr('type') === "password") {
$('#confirmPassword').attr('type', 'text');
} else {
$('#confirmPassword').attr('type', 'password');
}
})
它正在工作,但我认为这应该是一种更好的方法,函数中有很多重复的代码。我怎样才能在这里做得更好?问候
【问题讨论】:
标签: javascript jquery