asp.net XMLHttpRequest实现用户注册前的验证
更新时间:2009年10月14日 14:51:05 作者:
用户注册前的验证,提高用户体验。
测试通过环境VS2008,添加2个新项
1:DEMO3.ASPX
//查询字符串,SEND服务端的参数
function createQueryString() {
var userName = document.getElementById("userName").value;
var querystring = "userName=" + userName;
return querystring;
}
function RunAjax() {
//参考'摘自书中有意义的示例中DEMO1.HTML如何创建XMLHttpRequest对象 代码'
createXMLHttpRequest();
var queryString = "IsHaveUser.ashx?";
queryString = queryString + createQueryString()
+ "&timeStamp=" + new Date().getTime();//URL上追加时间戳,防止浏览器缓存
xmlHttp.onreadystatechange = handleStateChange;
xmlHttp.open("GET", queryString, true);
xmlHttp.send(null);
document.getElementById('validateMessage').innerText = '正在检查,请稍候...';
}
function handleStateChange() {
if (xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
var result = xmlHttp.responseText;
document.getElementById("validateMessage").innerText = result;
if (result== "恭喜!可以注册...") {
setTimeout("document.getElementById('validateMessage').innerText='';", 2000);
}
}
}
}
<input id="userName" /><input id="IsHaveUser" type="button" value="检查用户是否被注册" onclick="RunAjax();"/><span id="validateMessage" ></span>
2:IsHaveUser处理程序
public class IsHaveUser : IHttpHandler {
public void ProcessRequest (HttpContext context) {
System.Threading.Thread.Sleep(2000);
string userName = context.Request.QueryString["userName"];
bool result = 读取数据库执行判断用户名是否存在操作,返回布尔值,省略代码
if (result)
{
context.Response.Write("恭喜!可以注册...");
}
else { context.Response.Write("此用户存在,请更换..."); }
}
public bool IsReusable { get { return false;}}
}
1:DEMO3.ASPX
复制代码 代码如下:
//查询字符串,SEND服务端的参数
function createQueryString() {
var userName = document.getElementById("userName").value;
var querystring = "userName=" + userName;
return querystring;
}
function RunAjax() {
//参考'摘自书中有意义的示例中DEMO1.HTML如何创建XMLHttpRequest对象 代码'
createXMLHttpRequest();
var queryString = "IsHaveUser.ashx?";
queryString = queryString + createQueryString()
+ "&timeStamp=" + new Date().getTime();//URL上追加时间戳,防止浏览器缓存
xmlHttp.onreadystatechange = handleStateChange;
xmlHttp.open("GET", queryString, true);
xmlHttp.send(null);
document.getElementById('validateMessage').innerText = '正在检查,请稍候...';
}
function handleStateChange() {
if (xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
var result = xmlHttp.responseText;
document.getElementById("validateMessage").innerText = result;
if (result== "恭喜!可以注册...") {
setTimeout("document.getElementById('validateMessage').innerText='';", 2000);
}
}
}
}
<input id="userName" /><input id="IsHaveUser" type="button" value="检查用户是否被注册" onclick="RunAjax();"/><span id="validateMessage" ></span>
2:IsHaveUser处理程序
复制代码 代码如下:
public class IsHaveUser : IHttpHandler {
public void ProcessRequest (HttpContext context) {
System.Threading.Thread.Sleep(2000);
string userName = context.Request.QueryString["userName"];
bool result = 读取数据库执行判断用户名是否存在操作,返回布尔值,省略代码
if (result)
{
context.Response.Write("恭喜!可以注册...");
}
else { context.Response.Write("此用户存在,请更换..."); }
}
public bool IsReusable { get { return false;}}
}
相关文章
Visual Studio 2017通过SSH调试Linux上.NET Core
这篇文章主要为大家详细介绍了Visual Studio 2017通过SSH调试Linux 上.NET Core的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-03-03IE下document.referrer 拒绝访问的解决方法
原理就是给IE浏览器的页面偷偷加了个链接,然后自动点这个链接,于是referrer就能保留了,感兴趣的朋友可以参考下2013-09-09asp.net Parameters.AddWithValue方法在SQL语句的 Where 字句中的用法
今天晚上看论坛,有人提问说,Parameters.AddWithValue方法在有些情况下不好使2009-01-01
最新评论