-2

在第一个块中,我确保密码不包含“密码”。它完美地工作。

  var element=document.getElementById('password');
  if (element.value.toLowerCase().indexOf('password') > -1){ //returns 0 or more if present
    alert('Password may not contain the word `password`.');
    element.focus();
    return false;
  }

在第二个块中,我检查密码不包含名字,它不起作用,我做错了什么?

  //stop password of firstname
  var element=document.getElementById('password');
  var firstname=document.getElementById('firstname');
  if (element.value.toLowerCase().indexOf(firstname.value) > -1){ //returns 0 or more if present
    alert('Password may not contain the firstname.');
    element.focus();
    return false;
  }
4

3 回答 3

3

您忘记将名字小写:

// stop password of firstname
var element = document.getElementById('password');
var firstname = document.getElementById('firstname');
if(element.value.toLowerCase().indexOf(firstname.value.toLowerCase()) > -1) { //returns 0 or more if present
    alert('Password may not contain the firstname.');
    element.focus();
    return false;
}
于 2012-04-14T22:38:26.000 回答
0

if (element.value.toLowerCase().indexOf(firstname.value.toLowerCase () ) > -1)

于 2012-04-14T22:39:39.177 回答
-1

也许这不是问题,但您可以使用underscore.string以非常简单和富有表现力的方式做同样的事情:

_.includes(element.value.toLowerCase(), firstname.value.toLowerCase())
于 2012-04-14T22:43:34.197 回答