我有一个用户注册页面,在该页面中,使用java script.it验证的强制字段在所有浏览器和IE-8、9中都很好,但在IE-7中却不起作用。
当验证密码match.Below是传递单词匹配的必要条件时,就会出现问题。
下面是我验证密码匹配的代码
function PasswordLenghtVal(pass) // validating pass word length
{
if(/\d/.test(pass) && pass.length >= 6)
{
return true;
}
return false;
}
function FirstNonRepeatedChar(str) //validating letters repeating or not
{
var i,j,repeated = 0;
var len = str.length;
for( i = 0; i < len-1; i++ )
{
repeated = 0;
if(str[i] == str[i+1] ) // checking for existing or not
{
repeated = 1;
break;
}
}
if( repeated == 0 )
return true;
else
return false;
}这是我用于传递单词匹配的代码。IE-7中唯一的问题
发布于 2012-11-30 17:52:31
[] string的getter语法在IE7中不可用。
if(str[i] == str[i + 1]) // checking for existing or not 用
if (str.charAt(i) == str.charAt(i+1))您可以使用正则表达式检查它:
function FirstNonRepeatedChar(str) {
return !/(.)\1/.test(str);
}发布于 2012-11-30 17:58:27
好的。首先,您希望测试IE8和IE7中的每个单独组件。然后,让它这样做,如果它的IE7,它使用的东西,工作(显然的问题是str[],但由于我不太使用JavaScript,我不能告诉自己)。只要有一条语句重定向到工作代码(如果它是IE7或更低的代码),否则它就会转到您所拥有的代码上。
我的想法(不是真正的代码,只是为了说明我的意思--正如我说的,我不起诉JS ):
if(browser = "IE7") {
//Code that works in IE7
} else {
//Code that works in everything else
}https://stackoverflow.com/questions/13650405
复制相似问题