下面是CheckUserName.htm页面的代码
1
<
html xmlns
=
"
http://www.w3.org/1999/xhtml
"
>
2 < head >
3 < title > 无标题页 < / title>
4 < script src = " http://www.cnblogs.com/../JQuery/js/jquery-1.4.2.js " type = " text/javascript " >< / script>
5 < script type = " text/javascript " >
6 $( function (){
7 $( " #textUserName " ).blur( function (){ // 鼠标离开文本框时触发
8 var username = $( " #textUserName " ).val();
9 // 向CheckUserName发出请求,参数username,返回的数据用function(data,satus){}处理
10 $.post( " CheckUserName.ashx " ,{ " username " :username}, function (data,status){
11 if (status == " success " ){
12 alert(data);
13 }
14 });
15 })
16 });
17 < / script>
18 < / head>
19 < body >
20 < input type = " text " id = " textUserName " / >
21 < / body>
22 < / html>
2 < head >
3 < title > 无标题页 < / title>
4 < script src = " http://www.cnblogs.com/../JQuery/js/jquery-1.4.2.js " type = " text/javascript " >< / script>
5 < script type = " text/javascript " >
6 $( function (){
7 $( " #textUserName " ).blur( function (){ // 鼠标离开文本框时触发
8 var username = $( " #textUserName " ).val();
9 // 向CheckUserName发出请求,参数username,返回的数据用function(data,satus){}处理
10 $.post( " CheckUserName.ashx " ,{ " username " :username}, function (data,status){
11 if (status == " success " ){
12 alert(data);
13 }
14 });
15 })
16 });
17 < / script>
18 < / head>
19 < body >
20 < input type = " text " id = " textUserName " / >
21 < / body>
22 < / html>
下面的是CheckUserName.ashx页面的内容。
1
using
System;
2 using System.Web;
3 using System.Data.SqlClient;
4 using System.Configuration;
5
6 public class CheckUserName : IHttpHandler {
7
8 public void ProcessRequest (HttpContext context) {
9 context.Response.ContentType = " text/plain " ;
10 string username = context.Request[ " username " ];
11 string connection = ConfigurationManager.ConnectionStrings[ " TestDBConnectionString " ].ConnectionString;
12 using (SqlConnection sqlconn = new SqlConnection(connection))
13 {
14 using (SqlCommand sqlcommand = new SqlCommand())
15 {
16 sqlcommand.Connection = sqlconn;
17 sqlcommand.CommandText = " select * from UserNameLoginCheck where LoginUserName = @username " ;
18 sqlcommand.Parameters.AddWithValue( " @username " , username);
19 int SelectCount;
20 try
21 {
22 sqlconn.Open();
23 using (SqlDataReader sqldatareader = sqlcommand.ExecuteReader())
24 {
25 // 如果有找到,sqldatareader.Read()执行结果为true,否则为false.
26 while (sqldatareader.Read())
27 {
28 context.Response.Write( " 用户名已存在,请重新选择 " ); return ;
29 }
30 context.Response.Write( " 用户名可用 " ); return ;
31 }
32 }
33 catch (Exception ee)
34 {
35 throw ee;
36 }
37 finally
38 {
39 sqlconn.Close();
40 sqlconn.Dispose();
41 sqlcommand.Dispose();
2 using System.Web;
3 using System.Data.SqlClient;
4 using System.Configuration;
5
6 public class CheckUserName : IHttpHandler {
7
8 public void ProcessRequest (HttpContext context) {
9 context.Response.ContentType = " text/plain " ;
10 string username = context.Request[ " username " ];
11 string connection = ConfigurationManager.ConnectionStrings[ " TestDBConnectionString " ].ConnectionString;
12 using (SqlConnection sqlconn = new SqlConnection(connection))
13 {
14 using (SqlCommand sqlcommand = new SqlCommand())
15 {
16 sqlcommand.Connection = sqlconn;
17 sqlcommand.CommandText = " select * from UserNameLoginCheck where LoginUserName = @username " ;
18 sqlcommand.Parameters.AddWithValue( " @username " , username);
19 int SelectCount;
20 try
21 {
22 sqlconn.Open();
23 using (SqlDataReader sqldatareader = sqlcommand.ExecuteReader())
24 {
25 // 如果有找到,sqldatareader.Read()执行结果为true,否则为false.
26 while (sqldatareader.Read())
27 {
28 context.Response.Write( " 用户名已存在,请重新选择 " ); return ;
29 }
30 context.Response.Write( " 用户名可用 " ); return ;
31 }
32 }
33 catch (Exception ee)
34 {
35 throw ee;
36 }
37 finally
38 {
39 sqlconn.Close();
40 sqlconn.Dispose();
41 sqlcommand.Dispose();
//这个地方感觉有点多余,因为后面出了using的范围系统会自动注销sqlconn和sqlcommand,不知道大家怎么看呢?
42 }
43 }
44 }
45 }
46
47 public bool IsReusable {
48 get {
49 return false ;
50 }
51 }
52
53 }
42 }
43 }
44 }
45 }
46
47 public bool IsReusable {
48 get {
49 return false ;
50 }
51 }
52
53 }
欢迎大家批评指正!