我有这个代码:
function checkPassword(pass1, pass2) {
var p1 = document.getElementById(pass1)
var p2 = document.getElementById(pass2)
if (p1.value != p2.value) {
p2.setCustomValidity('verifiez que vous avez ecrit le meme mot de passe');
} else {
p2.setCustomValidity('')
}}
function Banned(password) {
pas = document.getElementById(password)
ban_list = ["111111", "11111111", ...]
for (var i = 0; i < ban_list.length; i++) {
if (pas.value == ban_list[i]) {
pas.setCustomValidity("Mot de Passe Facile, Veuillez le changer")
} else
{
pas.setCustomValidity("")}
}}
html:(偶数是OnBlur
)
<label for="pass1">Votre mot de passe</label>
<input class="keyboardInput" id="pass1" name="pass1" type="password" required onkeypress="checkCapsLock(event);" placeholder="" pattern=".{6,}" title="" onblur="checkPassword('pass1','pass2'); Banned('pass1')">
<label for="pass2">Confirmez le</label>
<input class="keyboardInput" id="pass2" name="pass2" type='password' required onkeypress="checkCapsLock(event);" placeholder="" onblur="checkPassword('pass1','pass2'); Banned('pass1')" title="">
Vous avez activé la touche majiscule
第一个代码有效,如果我设置了两个不同的密码,它会提醒我,如果我修改它,警报就会消失。但是在第二个(禁止)中,它不起作用(不会警告用户),如果我删除 Else 部分,它会起作用,但如果它会检测到列表中的单词,它甚至永远不会消失如果用户使用不属于列表的字符串修改值。
问题是什么?