Javascript - 使用indexOf搜索字符串

时间:2012-04-14 22:34:46

标签: javascript

在第一个块中,我确保密码不包含“密码”。它运作得很好。

  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;
  }

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

  //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;
  }

3 个答案:

答案 0 :(得分: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;
}

答案 1 :(得分:0)

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

答案 2 :(得分:-1)

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

_.includes(element.value.toLowerCase(), firstname.value.toLowerCase())