Ajax表单提交实例

王朝other·作者佚名  2007-01-08
窄屏简体版  字體: |||超大  

昨天在CSDN逛的时候,看见一位网友需要解决一些关于AJAX的FORM提交的问题,现在把一个实例贴出来,希望对广大爱好者有帮助.

<!--注册模块-->default.asp

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title>Ajax - Sample1</title>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> //请一定要将此页的编码设为UTF-8,否则将出现乱码

<meta name="author" content="tonyhl[at]126.com" />

<meta http-equiv="pragma" content="no-cache"/>

<script language="javascript" type="text/javascript" src="reg.js"></script>

<link rel="stylesheet" href="css.css" type="text/css" media="all"/>

<style type="text/css">

<!--

#Layer1 {

position:absolute;

width:200px;

height:115px;

z-index:1;

left: 409px;

top: 88px;

}

-->

</style>

</head>

<body>

<h2>Ajax应用实例: 注册模块</h2>

<div id="Layer1">

<div id="msg"></div>

</div>

ID: <input type="text" id="regid" />

Password: <input type="password" id="regpassword" />

<input name="f" type="file" />

<input type="submit" id="regsubmit" value="注册" onclick="Check()" />

<h2>当注册ID为 tony的用户时,后台验证该ID已存在,返回提示信息<br />

为突出显示无刷新效果,服务器端程序将自动进行百万加法运算

</h2>

</body>

</html>

<!----表单数据提交脚本--->REG.JS

function GE(a){return document.getElementById(a);}

function Check(){

if(GE('regid').value==''){GE('msg').innerHTML='ID不能为空';return false}

if(GE('regpassword').value==''){GE('msg').innerHTML='password 不能为空';return false}

var X=new ActiveXObject("Msxml2.XMLHTTP");

if(X){

GE('regsubmit').disabled=true;

X.onreadystatechange=function(){

if(X.readyState==4){

if(X.status==200){

eval(X.responseText)

}

else{GE('msg').innerHTML=X.statusText}

}

else{GE('msg').innerHTML="正在提交数据..."}

};

X.open('POST','reg.asp',true);

X.setRequestHeader('Content-Type','application/x-www-form-urlencoded');

var SendData = 'regid='+GE('regid').value+'&regpassword='+GE('regpassword').value+'&file='+GE('f').value

X.send(SendData)

}

else{

GE('msg').innerHTML='你的浏览器不支持XMLHttpRequest'

}

}

<!---程序处理--->reg.asp

<%@ LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>//CODEPAGE必须为650001,否则也出现乱码,如果有HTML文字,一定设为UTF-8编码,否则将出现乱码.

<%

Dim regid, regpassword, str

regid=Request.Form("regid")

regpassword=Request.Form("regpassword")

f=Request.Form("file")

Dim i, ii

ii = 0

For i = 0 To 1000000

ii = ii + i

Next

If regid="" or regpassword="" then

str = "ID和PASSWORD必须填写"

Else

If regid <> "tony" Then

str = "注册成功,ID为" & regid & " , 密码为" & regpassword&f

Else

str = "注册失败,ID已经存在"

End If

End if

Response.Write "GE('msg').innerHTML='" & str & "';GE('regsubmit').disabled=false"

Response.End

%>

如有其他疑问,请跟帖~

这个实例本人认为比较全面,是我用AJAX表单提交的初学实例,相当够用!如有错误,请指正!谢谢!

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航