我正在尝试检查密码输入中是否至少有一个大写字母,如果是,请更改默认'删除'将图像更改为复选标记图像。
有人看到我做错了吗?
$('#register').keyup(function() {
var upperCase = $("#upperCase").val();
var upperCaseValid = upperCase.toUpperCase().length >= 1;
/*if (upperCaseValid == upperCaseValid.toUpperCase()) {
$('#upperCase').attr('src', 'icons/collection/checkmark.png');
}*/
$('#upperCase').attr('src', upperCaseValid ? 'https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcQlyqJ14HYP1WclpK9RkJWo8jIDBkhTW0GS31AxRkozAEA72ULhY89LIzk' : 'icons/collection/delete.png');
});

#password-check {
margin: 30px auto;
}
.password-check-field {
color: black;
}
.password-check-field img {
margin-right: 15px;
height: 15px;
width: 15px;
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<form action="" method="POST" id="register">
<div class="field">
<label for="firstname">First Name</label>
<input type="text" name="firstname" required>
</div>
<div class="field">
<label for="password">Choose a password</label>
<input type="password" name="password" id="password" required>
</div>
<div class="password-check-field">
<img id="upperCase" src="icons/collection/delete.png" alt="Success">Your password has at least 1 capital letter
</div>
</form>
&#13;
答案 0 :(得分:1)
要检查字符串是否包含大写字符,您可以使用正则表达式,特别是[A-Z]
。另请注意,在您的示例中,您要检查#upperCase
元素的值,即图像。我认为选择器应该是#password
。试试这个;
$('#register').keyup(function() {
var upperCaseValid = $("#password").val().match(/[A-Z]/g);
$('#upperCase').attr('src', upperCaseValid ? 'https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcQlyqJ14HYP1WclpK9RkJWo8jIDBkhTW0GS31AxRkozAEA72ULhY89LIzk' : 'icons/collection/delete.png');
});
&#13;
#password-check {
margin: 30px auto;
}
.password-check-field {
color: black;
}
.password-check-field img {
margin-right: 15px;
height: 15px;
width: 15px;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<form action="" method="POST" id="register">
<div class="field">
<label for="firstname">First Name</label>
<input type="text" name="firstname" required>
</div>
<div class="field">
<label for="password">Choose a password</label>
<input type="password" name="password" id="password" required>
</div>
<div class="password-check-field">
<img id="upperCase" src="icons/collection/delete.png" alt="Success">Your password has at least 1 capital letter
</div>
</form>
&#13;
答案 1 :(得分:1)