
一些东西改了一下,你只需要按照注释改改你需要改的东西就行了。
1 首先你要新建一个名称为ajax_user.asp的ASP文件,将里面的HTML全部清空(记住是全部)!就是一个空白文件,保存到你注册页面文件同级目录下,然后加上这些代码:
(这个文件按照你实际情况改好了后,最好在浏览器打出这个文件的路径并在路径后面加上?user=aaaa测试一下,如果没提示错误,就可以了,)
===============ajax_user.asp的内容==================(不要复制我)
<%response.Charset="gb2312"%>
<%
'定义变量user用来储存ajax发送请求链接中带的user值
set conn = server.createobject("ADODB.connection")
conn.open "driver={microsoft Access driver (*.mdb)}dbq="&server.mappath("数据库路径") '此处需要作实际改动!
dim user
user = request.querystring("user")
if user<>"" then
set rs_user = server.createobject("ADODB.recordset")
rs_user.open "select * from 会员表 where 账号字段='"&user&"'",conn,1,1 '此处需要作实际改动!
if rs_user.eof then
'用户名可用的提示信息,可以依实际情况改动!
response.write "<font color='green'>恭喜,此用户名可用!</font>"
else
'用户名不可用的提示信息,可以依实际情况改动!
response.write "<font color='red'>此用户名已被注册!</font>"
end if
end if
%>
===============ajax_user.asp的内容==================(不要复制我)
2 然后在你的注册页面的<head></head>之间加上如下代码:
<script type="text/javascript" language="javascript">
http_request = null
function createAjax(){
if(window.XMLHttpRequest){
//Mozilla,Safari
http_request = new XMLHttpRequest()
if(http_request.overrideMimeType){
http_request.overrideMimeType('text/xml')
}
}else if(window.ActiveXObject){
//IE
try{
http_request = new ActiveXObject("Mszml2.XMLHTTP")
}catch (e){
try{
http_request = new ActiveXObject("Microsoft.XMLHTTP")
}catch (e){
alert("exception")
}
}
}
}
//==============需要改动的都在右边作了注释的!================
function user_add(){
var user = document.getElementById("账号输入文本框的id").value//此处需要作实际改动!
var url = "ajax_user.asp?user="+user//ajax_user.asp的路径不要动
var myDate = new Date()
var hours = myDate.getHours()
var minutes = myDate.getMinutes()
var seconds = myDate.getSeconds()
var times = hours+"H"+minutes+"M"+seconds+"S"
//post auto saved data
if(user!="" &&user.length>=3 &&user.length<=6){ //此处需要作实际改动,3和6分别为用户名要求的最少字符数和最多字符数
createAjax()
http_request.onreadystatechange=user_Ajax
http_request.open("POST",url+"&times="+times,true)
http_request.send(null)
}
}
function user_Ajax(){
var warningDiv = document.getElementById("显示提示信息的容器的id")//此处需要作实际改动!
if(http_request.readyState == 4){
if(http_request.status == 200 || http_request.status == 0){
var requestContent = http_request.responseText
warningDiv.innerHTML = requestContent
}else if(http_request.status == 404 || http_request.status == 2){
alert("404 (Not Found),未找到请求文件!")
}else{
alert("请求数据过程中出现错误!"+http_request.status)
}
}else{
warningDiv.innerHTML = "检测中..."
}
}
</script>
3 接着在你的账号文本框里加入如下属性:
假如这个是账号文本框
<input type="text" name="user" id="user" onblur="user_add()"/>
那么,当输入完毕点账号文本框失去焦点就会检测
这个应该是你ajax的s变量问题,首先你要知道reg_cncn.asp返回的是什么格式的东西,假如返回一个json格式的数组,假如数组如下:{'status':'success', 'msg':'我是消息', 'data':'我是内容,可能还是二维数组'}这是s的调用就可以简单这么写:
1. s.status == 'success'
2. warning(obj, s.msg)
3.alert(s.data)
但如果reg_cncn.asp返回的是其他格式的,就需要转化了
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)