无刷新 验证用户名是否存在

mengjun5200 2008-09-21 02:21:46
为什么不管 我输入什么都提示我用户名已经存在啊 ,尤其是当我把绿色的改成false他也说用户名已经存在,请各位帮我看下啊

function chkusername()
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
var data=document.getElementById("username").value;
var url="checkuser/CheckUser.aspx?username="+data;
//alert(data)
xmlhttp.onreadystatechange=statechange;
xmlhttp.Open("post",url,true);
xmlhttp.Send(null);}

function statechange() {
if(xmlhttp.readystate==4)
{
var isvaild=xmlhttp.responseText;
if(isvaild=="true")

{

document.getElementById("chkusername").innerHTML="";
}
else
{
document.getElementById("chkusername").innerHTML="<img src=images/invalid.jpg /><font size=2px color=red>用户名已经存在</font>";

}
}
}
checkuser.aspx

protected void Page_Load(object sender, EventArgs e)
{
bool isvaild = false;
string username=Request.QueryString["username"].ToString();
checkadmin ca = new checkadmin();
personinfor pi = new personinfor();
pi.UserName = ca.CheckInfor(username);
person p = new person();
if (Convert.ToInt32(p.selectusername(pi))<=0)
{
isvaild = true;
}

Response.Clear();
Response.Write(isvaild?"true":"false");
Response.Flush();


}
...全文
51 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
mengjun5200 2008-09-21
  • 打赏
  • 举报
回复
3楼的方法不行,很奇怪,我跟踪到下面的isvaild是有值的,可是不知道为什么到了if循环的时候就老跑用户名存在(isvaild是有true和false2种情况的值的)
if(xmlhttp.readystate==4)
{
var isvaild=xmlhttp.responseText;
if(isvaild=="true")

{

document.getElementById("chkusername").innerHTML="";
}
else
{
document.getElementById("chkusername").innerHTML=" <img src=images/invalid.jpg /> <font size=2px color=red>用户名已经存在 </font>";

}
}
}
魔拉宝 2008-09-21
  • 打赏
  • 举报
回复
function statechange() {
if(xmlhttp.readystate==4)
{
var isvaild=xmlhttp.responseText;
if(isvaild=="true")
}
{

document.getElementById("chkusername").innerHTML="";
}
else
{
document.getElementById("chkusername").innerHTML=" <img src=images/invalid.jpg /> <font size=2px color=red>用户名已经存在 </font>";

}
}

这样试一下
mengjun5200 2008-09-21
  • 打赏
  • 举报
回复
谢谢,我还是想先学会这个。。。还有没有别的啊??如果说是取了空值的话为什么一定是执行 用户已经存在呢?
TimLeaf 2008-09-21
  • 打赏
  • 举报
回复
[Quote=引用楼主 mengjun5200 的帖子:]
尤其是当我把绿色的改成false他也说用户名已经存在
[/Quote]
我觉得isvaild的值是undefined...所以会出现这种情况...
你可以debugger看一下它的值...
我的ajax是初学...看不懂你这样的方式...
如果ASP.NET 有个Ajax.dll用吧?

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧