注册 登录
编程论坛 ASP.NET技术论坛

验证失败,什么哪出错了呢?

swalia 发布于 2008-01-08 17:13, 1801 次点击
function showHint(str)
{
    if (str.length > 0 && str != null)
    {
        Customer.innerHTML="验证用户名....";
        //var url="checkuser.asp?sid=" + Math.random() + "&CustomerID=" + str
        var url="../Member/checkData.aspx?CustomerID=" + str
        xmlHttp=GetXmlHttpObject(stateChanged)
        xmlHttp.open("GET", url , true)
        xmlHttp.send(null)
    }
    else
    {
        document.getElementById("Customer").innerHTML=""
    }
}
function stateChanged()
{
    
    if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
    {
    
        var flag1;
        var resStr = xmlHttp.responseText.substring(0,4);
        
        if(resStr == "true")
        {
            flag1 = resStr;
        }
        else
        {
            flag1 = xmlHttp.responseText.substring(0,5)
        }
    
        if (flag1 =="false")
        {
            document.getElementById("Customer").innerHTML= "<img src='../RegImg/pic_right.gif'>&nbsp;&nbsp;" +"恭喜你,此用户名未被使用!";
            document.getElementById("userID").value= "YES";
        }
        else if(flag1 =="true")
        {
            document.getElementById("Customer").innerHTML="<img src='../RegImg/pic_error.gif'>&nbsp;&nbsp;" +"对不起,此用户名已经存在!";
            document.getElementById("Customer").className = "ss2"
            document.getElementById("userID").value= "NO";
            return false;
        }
        else
        {
        
            document.getElementById("Customer").innerHTML="<img src='../RegImg/pic_error.gif'>&nbsp;&nbsp;" +"验证失败!!";
            document.getElementById("Customer").className = "ss2"
            document.getElementById("userID").value= "NO";
            return false;
        }
    }
    else
        return false;

    return true;
}
checkData.aspx页面代码:
SqlConnection strcon = new SqlConnection(System.Configuration.ConfigurationManager.AppSettings["strcon"]);
        strcon.Open();
        string CardId = this.CardId.Text.ToString();
        SqlCommand cmd = new SqlCommand("select count(*) from Users where userid="+Request.QuryString["CustomerID"], strcon);
        int count = Convert.ToInt32(cmd.ExecuteScalar());
        if (count > 0)
        {
           args.IsValid = false;
        }
        else
        {
            args.IsValid = true;
        }
   
}
但是为什么返回的结果是验证失败呢??哪个代码错了.请帮忙看一下谢谢!!
15 回复
#2
hex_maddog2008-01-08 18:21
javascript
我服了,居然用js来验证,干吗全不写到后台啊
看你的程序是验证的图片出错
        var url="../Member/checkData.aspx?CustomerID=" + str
没有条件选择
#3
hex_maddog2008-01-08 18:23
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
    {
   
        var flag1;
        var resStr = xmlHttp.responseText.substring(0,4);
        
        if(resStr == "true")
        {
            flag1 = resStr;
        }
        else
        {
            flag1 = xmlHttp.responseText.substring(0,5)
        }
   
        if (flag1 =="false")
#4
hex_maddog2008-01-08 18:27
应该这样改
        if (flag1 =="false")
        {
            document.getElementById("Customer").innerHTML= "<img src='../RegImg/pic_right.gif'>  " +"恭喜你,此用户名未被使用!";
            document.getElementById("userID").value= "YES";
        }
        else if(flag1 =="true")
        {        
            document.getElementById("Customer").innerHTML="<img src='../RegImg/pic_error.gif'>  " +"验证失败!!";
            document.getElementById("Customer").className = "ss2"
            document.getElementById("userID").value= "NO";
            return false;        }
        else
        {
            document.getElementById("Customer").innerHTML="<img src='../RegImg/pic_error.gif'>  " +"对不起,此用户名已经存在!";
            document.getElementById("Customer").className = "ss2"
            document.getElementById("userID").value= "NO";
            return false;

        }
#5
hex_maddog2008-01-08 18:31
错了
   你自己直接给flag1赋值
#6
hex_maddog2008-01-08 18:33
if(resStr == "true")
        {
            flag1 = resStr;
        }
resStr里面装的是字符串,转换成bool型就可以了,或者直接赋值,干吗要画蛇添足用什么resStr呢?
#7
hex_maddog2008-01-08 18:34
if(resStr == "true")
        {
            flag1 = ture;
        }
就可以了
#8
swalia2008-01-09 08:48
不行啊.改了验证就一直没反应了.. 用ASP的就可以通过..我现在也试不出来哪错了啊..帮我再看看谢谢!!!
#9
hex_maddog2008-01-09 09:33
重新定义flag1试试看,不要用字符串赋值,直接用布尔型来比较
#10
hex_maddog2008-01-09 09:40
这样肯定行
        if(resStr == "true")
        {
            flag1 = "true";
        }
        else
        {
            flag1 = "false"
#11
hex_maddog2008-01-09 09:42
如果还不行在这段代码前加一段,看看输出resStr是不是true
如果是的话还要看有没有空格
#12
1916381412008-01-09 15:25
Request.Qurying. 是什么东东..
#13
swalia2008-01-09 18:27
还是不行的啊..是不是这里要改一下  
 {
           args.IsValid = false;
        }
        else
        {
            args.IsValid = true;
        }
怎么样才能改成response.write("false")呢??
#14
hex_maddog2008-01-10 09:31
是的,就是
{
           args.IsValid = false;
        }
        else
        {
            args.IsValid = true;
        }
}
#15
hex_maddog2008-01-10 09:33
{
           args.IsValid = “false”;
        }
        else
        {
            args.IsValid = ”true“;
        }
}
#16
hex_maddog2008-01-10 09:35
改成这个输出什么咯?
{
           args.IsValid = “false”;
        }
        else
        {
            args.IsValid = ”true“;
        }
}
1