Ajax实现异步刷新验证用户名是否已存在的具体方法 都是简单的实例,所以直接发代码 静态页面Ajax.html 复制代码 代码如下: Ajax

ajax

账号:
密码:
确认密码:
姓名:
在账号输入框失去焦点时调用函数 访问服务器使用的是Get方法,所以在参数处使用了附加随机码来避免缓存。 验证页面validate.aspx后台代码: 复制代码 代码如下:using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using System.Configuration;using System.Data.Sql;using System.Data.SqlClient; public partial class Ajax_validate_validate : System.Web.UI.Page{ public SqlConnection conn; protected void Page_Load(object sender, EventArgs e) { Response.Clear(); if (Exists(Request.QueryString["account"])) Response.Write("true"); else Response.Write("false"); Response.End(); } /// /// 获取数据库连接 /// /// protected SqlConnection GetConnection() { string str = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString; conn = new SqlConnection(str); return conn; } protected bool Exists(string account) { using (GetConnection()) { try { conn.Open(); string sqlStr = "select count(*) from userinfo where account='" + account + "'"; SqlCommand cmd = new SqlCommand(sqlStr, conn); int row = Convert.ToInt32(cmd.ExecuteScalar()); if (row > 0) return true; else return false; } catch (Exception e) { throw e; } finally { conn.Close(); } } }} 在后台中验证用户名是否已经存在于数据库中,返回真或者假 运行结果: 数据库很简单,只建了一张表userinfo,有3个字段:account、passwd、name 注意:在后台往请求页面写数据时,当写完要发送的数据之后,需要调用Response.end()方法来终止写入,否则可能会发送一个完整页面过去。