呵呵..在某些不刷新而要与数据库交互的地方可以用上这个.
在某些要登录才能发贴的地方可以用上.比如说,用户写了好长一篇文章.提交后才发现,session过期.而导致跳转到登录页了,他写的东西那就全没了.这样对用户来说,就不太友好了.所以我们可以AJAX判断一下是否要登录.再d出相应的提示.
还有就是表单内容多的地方,用户填写了好几十项.提交后发现一项不合要求.返回后又重新填写信息,这样的话,一般人都不会再去填那好几十项了.除非他真的要你网站的资源,而你又要他注册后才可用..
总之.AJAX可以用于网站的任何交互页面,但是也要注意控制量.并非都用AJAX那就是一个很棒的网站.关键还是在于用户
用ajax每隔一段时间向某页面提交数据,返回数据到当前页就可以了。或者用iframe每隔一段时间自动刷新。
下面是用jquery的ajax
var sysMsg='等待回复询价:<font color=red>{n1}条</font><br>已经回复询价:<font color=red>{n2}条</font>'
$.ajax({
type: 'get',cache: false,
url: 'Ajax.asp?act=np&uid=1,
success: function(data){
var msg=''
var iNum2=0
if(iNum==""){
iNum=dataiNum2=0
}else{
if(uType<=2){
if(data>iNum)iNum2=data-iNum
iNum=data
}else{
if(data<iNum)iNum2=data-iNum
iNum=data
if(iNum2<=0) return false
}
}
if(iNum==0&&iNum2==0)return false
top.focus()
sysMsg=sysMsg.replace('{n1}',iNum)
sysMsg=sysMsg.replace('{n2}',iNum2)
$.messager.show({
title:'系统消息',
msg:sysMsg,
timeout:10000,
showType:'show'
})
$('#InquiryNum').html(sysMsg)
},
error:function(xhr){
$('#InquiryNum').html('<img src="images/icon_info.gif" border=0>自动提示询价、回复信息错误。')
showMsg(xhr.responseText)
}
})
jsp中用ajax获取数据的例子如下:jsp代码:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath()
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<HEAD>
<TITLE>留学生系统</TITLE>
<META http-equiv=Content-Type content="text/htmlcharset=GBK">
<SCRIPT language=JavaScript type=text/JavaScript>
var XMLHttpReq = false
//ajax接口
function createXMLHttpRequest(){
if(window.XMLHttpRequest){
XMLHttpReq = new XMLHttpRequest()
}else if(window.ActiveXObject){
try{
XMLHttpReq = new ActiveXObject("MSXML2.XMLHTTP")
}catch(e){
try{
XMLHttpReq = new ActiveXObject("Mircsoft.XMLHTTP")
}catch(e1){}
}
}
}
function sendRequest(url){
createXMLHttpRequest()
XMLHttpReq.open("GET",url,true)
XMLHttpReq.onreadystatechange = processResponse
XMLHttpReq.send(null)
}
function processResponse(){
if(XMLHttpReq.readyState == 4){
if(XMLHttpReq.status == 200){
var res = XMLHttpReq.responseXML.getElementsByTagName("res")[0].firstChild.data
window.alert(res)
document.myform.userid.value=""
document.myform.pwd.value=""
}else{
window.alert("你请求的页面有异常1")
}
}
}
function userCheck(){
var userid = document.myform.userid.value
var pwd = document.myform.pwd.value
if(userid == ""){
window.alert("用户名不能为空")
document.myform.pwd.value=""
document.myform.userid.focus()
return false
}else{
sendRequest("login?userid="+userid)
}
}
function pwdCheck(){
var pwd = document.myform.pwd.value
var pwd2 = document.myform.pwd2.value
if(pwd!=pwd2){
window.alert("密码不一致")
document.myform.pwd.value=""
document.myform.pwd2.value=""
document.myform.pwd.focus()
return false
}
}
</SCRIPT>
<LINK href="css/css.css" type=text/css rel=stylesheet>
</HEAD>
<body>
<table width="778" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" >
<tr>
<td width="17%"><img src="images/logo.jpg" width="124" height="101"></td>
<td width="558" height="101" background="images/banner.jpg"><div align="center">
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="558" height="101">
<param name="movie" value="images/2.swf">
<param name="quality" value="high">
<embed src="images/2.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="558" height="101"></embed>
<param name="wmode" value="transparent">
</object>
</div></td>
<td width="11%"><table width="100%" border="0" cellpadding="0" cellspacing="0" >
<tr>
<td height="30" class="style1"><div align="center">设为首页</div></td>
</tr>
<tr>
<td height="30" class="style1"><div align="center">收藏本站</div></td>
</tr>
<tr>
<td height="30" class="style1"><div align="center">联系我们</div></td>
</tr>
</table></td>
</tr>
</table>
<form method="post" action="control.jsp?action=register" name="myform">
<table width="300" border="0" align="center" bgcolor="#F0F0F0">
<tr>
<td align="center">用户名</td>
<td><input name="userid" type="text" size="20" onblur="userCheck()"></td>
</tr>
<tr>
<td align="center">真实姓名</td>
<td><input name="username" type="text" size="20"/></td>
</tr>
<tr>
<td align="center">性别</td>
<td>
<input type="radio" name="sex" value="0" checked="checked">男
<input type="radio" name="sex" value="1">女
</td>
</tr>
<tr>
<td align="center">密码</td>
<td><input name="pwd" type="password" size="20"/></td>
</tr>
<tr>
<td align="center">密码确认</td>
<td><input name="pwd2" type="password" size="20" onblur="pwdCheck()"/></td>
</tr>
<tr>
<td align="center">电子邮箱</td>
<td><input name="email" type="text" size="20"/></td>
</tr>
<tr>
<td align="center">学校</td>
<td><input name="school" type="text" size="20"/></td>
</tr>
<tr>
<td align="center">电话号码</td>
<td><input name="phonenum" type="text" size="20"/></td>
</tr>
<tr>
<td align="center"><img border=0 src="image.jsp"></td>
<td><input type=text name=in maxlength=4 size="8"></td>
</tr>
<tr>
<td align="center"><input type="submit" value="确定" /></td>
</tr>
</table>
</form>
</body>
</html>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)