如何在ASP.net(c#)中用Ajax实现检测数据库中的用户名已经存在

如题所述

给你说一下大致流程,(1)需要一个一般处理程序ashx,主要功能就是传入一个用户名进行检索(也就是sql语句搜索),如果存在就返回一个标识变量,例如1或者0。(2)就是js部分代码,构造一个xmlhttprequest,不过建议你使用juery的ajax,具体有juery.post()和juery.get()两种方式,然后去请求那个一般处理程序,并将用户名作为参数传过去,等ajax过程完成之后就会有个返回数据,就是前面设置1或者0,根据这个标识来确定是否已经存在。大致就是这样。
如果还有不明白的可以继续追问,有时间,我可以写一个详细代码样例。追问

我们用的事JQuery的Ajax,可是不会做你讲的ashx.还请大师赐教,详细代码样例

追答

JQuery部分的不详细解释了,估计你也应该会,只说一个

jQuery.post(url,data,success(data, textStatus, jqXHR),dataType)函数原型----这个函数等价与

$.ajax({

  type: 'POST',

  url: url,

  data: data,

  success: success,

  dataType: dataType

});


和一个具体例子

$.post("searchname.ashx",{name:"username"},function(result){   //注释1

    $("#content").html(result);//注释2

  });

注释还是写在下面吧,不然在百度知道里面看着挺乱的:

//注释1:$与JQuery等价  "username"需要具体换成文本框里的值,总之是一个string类型的内容,比如$("#inputname").val(),这里用"username"常量字符串演示。

//注释2:result是请求页面返回的内容,都以字符串的形式赋值给result了,名称随意。



下面就是searchname.ashx的内容了

别的不说,微软自动产生的,以及手动编写代码全部一同拷贝上,注释不写详细了,有不懂的可以追问,中间涉及数据库的地方就随意写了,你根据具体内容进行更改。

(ps:本来想给代码的,可是百度知道控制字数,我只能截图了,不方便你复制了。想要代码,我可以发给你,不过这样也好,自己手动敲写,有助于熟练掌握,不懒的话,就自己敲吧。)

上图:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-11-04
前台用 jquery 把用户名提交至后台(get和post)两种方式,后台request.querystring()方法接收或者request.Form[""] 接收,后台接收之后在跟数据库进行比较。
第2个回答  2013-11-05
户名已经存在
相似回答