Javascript 在更改时验证用户名
我试图在我的jsp页面上验证我的用户名。基本上,我是想看看是否有匹配的域名我想重定向到其他一些网址。下面是我的功能Javascript 在更改时验证用户名,javascript,onchange,Javascript,Onchange,我试图在我的jsp页面上验证我的用户名。基本上,我是想看看是否有匹配的域名我想重定向到其他一些网址。下面是我的功能 function validateName() { var UserName=document.getElementById('Username').value; if (UserName == "@test.com") { window.location="http://test.test.com"; } else if
function validateName()
{
var UserName=document.getElementById('Username').value;
if (UserName == "@test.com")
{
window.location="http://test.test.com";
}
else if (UserName == "@test1.com")
{
window.location="https://test.test1.com";
}
return true
}
我的表单有onchange事件
<p>
Enter the UserName: <input id="Username" name="Username" onchange="validateName()"><br>
</p>
输入用户名:
我如何验证这一点?我不认为上面的工作。每当我尝试放置一些“test.com”或“test1.com”时,我都没有看到表单中发生任何事情
如果您能解释一下,我将不胜感激。请使用onkeyup=“validateName()”
而不是onchange=“validateName()”
永远不要使用asvar name
,这是以前用作对象id
的字符串。。。
您要使用的对象ID
&变量名必须不同(不区分大小写)
因此,(请记住,不区分大小写)您的变量名
与您的对象ID
冲突,因此在您的函数中,您实际上是在比较:
if ( username == username.value ) {...}
\ \
\_ Object \
\_ Object Property
// will never be true
因此,简而言之……
使用其他内容更改函数中的变量名称。
函数validateName()
{
var UserNameToCheck=document.getElementById('Username').value;
if(UserNameToCheck==“@test.com”)
{
警报(“http://test.test.com");
//window.location=”http://test.test.com";
}
else if(UserNameToCheck==“@test1.com”)
{
警报(“http://test.test1.com");
//window.location=”https://test.test1.com";
}
返回真值
}
输入用户名:
很抱歉,问题是。我如何验证这一点。我不认为上面的工作。当我尝试放置一些test.com或test1.com时,我看不到表单中发生任何事情。如果您能对此有所了解,我们将不胜感激。只有当输入字段失去焦点时,更改事件才会触发……是否您正在检查“@test1.com”的代码是否相等,但您正在测试“test1.com”?这些字符串彼此不相等,因此不会发生任何事情。我尝试完全像这样@test.com验证onchange是否触发。不起作用,我试过了。这也不管用。如果我在函数中有一条警告消息。我可以看到它在onchange事件中工作。但除此之外,我看什么都没有发生。我试图删除警报,并试图在System.out中打印用户名。我也没有看到console中出现任何问题。为什么不添加console.log来检查是否工作。我发现了问题。不知何故,问题在于函数名。它正在与其他人产生一些冲突。所以我改变了函数名。现在它运行良好。一个简单的问题。用户名通常类似于aish@test.com如何仅验证域。基本上我想检查域名和重定向,而不是用户名。是username
用户email
then吗?。。在这种情况下,您可以使用拆分函数,如:var host=UserName.split(“@”)代码>并在验证中使用:主机[1]
进行访问。(主机[0]是at之前的字符串,主机[1]之后的所有内容,等等…)我尝试了这个。无法工作。函数domainCheck(){//alert(“test”);var uname=Username.split(“@”);System.out.println(主机[1]);if(uname[1]=“test.com”){window.location=“}否则if(uname[1]=“test1.com”){window.location=”“}返回true;}基本上,我注意到当我定义了一个var,然后进行上面的验证时,它是不起作用的。但是我看到这个工作很好。函数domainCheck(){//var host=Username.split(“@”);//System.out.println(host[1]);if(Username.value==“test.com”){window.location=”“;}else if(Username.value==”test1.com“{window.location=”“;}返回true;}感谢它终于起作用了。我做错了什么。你的建议很有效。
if ( username == username.value ) {...}
\ \
\_ Object \
\_ Object Property
// will never be true