-1

英语不是我的主要语言,所以我会尽力解释自己......我需要使用javascript检查用户输入用户名的第一个字母,看看它是否在 AZ 或 az 之间。如果不是,它将删除用户输入的字符串。为什么代码不起作用?

function UsernameRegisterVaildation()
{
    var username = document.getElementById("usernameRegister");
    var x = false;
    var y = false;
    if (x.CharAt(0) >= 'A' && x.CharAt(0) <= 'Z')
        x = true;

    if (y.CharAt(0) >= 'a' && y.CharAt(0) <= 'z')
        y = true;

    if (!x || !y)
    {
        alert("WRONG USERNAME");
    }
}

这是输入:

        Username: <input type="text" id="usernameRegister" name="UserNameRegister" onchange="UsernameRegisterVaildation();"/>
4

1 回答 1

5

charAt,不是CharAt。此外,您还获得了对包含用户名的元素的引用,而不是用户名本身 - 获取value属性。

不过,您也可以只使用一个正则表达式:

if(!/^[a-z]/i.test(username.value)) {
    ...
}
于 2013-02-07T19:31:31.553 回答