首先是jsp页面和脚本,为了方便写在一个里面
这是一个很常见的检测用户名是否存在的功能
这里用的是struts
<%@ page contentType="text/html; charset=GBK" %>
<html>
<head>
<title>
ajax
</title>
</head>
<body bgcolor="#ffffff">
<h1>
<input name="username" type="text" maxlength="20" />
<input id="chk-name-btn" type="button" value="检测帐号" onclick="testName('<%=request.getContextPath()%>')" />
<div id="view_name"></div>
</h1>
</body>
</html>
<script language="javascript">
if (window.ActiveXObject && !window.XMLHttpRequest) {
window.XMLHttpRequest=function() {
return new ActiveXObject((navigator.userAgent.toLowerCase().indexOf('msie 5') != -1) ? 'Microsoft.XMLHTTP' : 'Msxml2.XMLHTTP');
};
}//取得XMLHttpRequest对象
function testName(path){
//path是取得系统路径
var view_name=document.getElementById("view_name");
var req=new XMLHttpRequest();
if (req) {
req.onreadystatechange=function() {
if (req.readyState==4 && req.status==200) {//判断状态,4是已发送,200已完成
if(req.responseText==0){
view_name.style.color='green';
view_name.innerHTML='该用户名可以正常使用';
}else if(req.responseText==1){
view_name.style.color='red';
view_name.innerHTML='该用户名已经被使用';
}else{
view_name.style.color='red';
view_name.innerHTML='该用户名含有非法字符!';
}
}
}
req.open('POST', path+'/ajax.do');//struts
//req.open('POST', path+'/ajax.servlet');//servlet
//req.open('POST', path+'/ajax.action');//webwork
req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
req.send("");//发送参数如果有参数req.send("username="+user_name);用request取得
}
}
</script>
这个jsp页面并没有取得用户名,就是演示一下。还有<div>可以换span,具体作用问美工吧。
接受ajax请求的action。
import org.apache.struts.action.*;
import javax.servlet.http.*;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.PrintWriter;
/**
* <p>Title:AjaxAction </p>
*/
public class AjaxAction extends Action {
public ActionForward execute(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Exception {
PrintWriter out = response.getWriter();
out.print(1);//ajax取得都是字符的输出。如果数据量大的话,还可以用xml来发送和接受
return null;
}
}
struts-config.xml
<action type="test.whw.upload.AjaxAction" validate="false" scope="request" path="/ajax"/>
----------------------------
如果是servlet
web.xml
<servlet>
<servlet-name>AjaxServlet </servlet-name>
<servlet-class>servlet.AjaxServlet </servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AjaxServlet </servlet-name>
<url-pattern>/AjaxServlet .servlet</url-pattern>
</servlet-mapping>
AjaxServlet.java
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class AjaxServlet extends HttpServlet {
Logger log = Logger.getLogger(this.getClass());
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException,IOException {
response.setContentType("text/xml; charset=GBK");
PrintWriter out = response.getWriter();
out.print(2);
}
}
//Process the HTTP Post request
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
//Process the HTTP Put request
public void doPut(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
//Process the HTTP Delete request
public void doDelete(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
}
//Clean up resources
public void destroy() {
}
}
-------------------------------------
如果是webwork
xwork.xml
<action name="ajax" class="com.whw.upload.action.webwork.AjaxAction" method="ajax"/>
AjaxAction.java
import java.io.PrintWriter;
public class AjexAlbumAction extends ActionSupport implements Action{
public void ajax()throws IOException {
PrintWriter pw = ServletActionContext.getResponse().getWriter();
ServletActionContext.getResponse().setContentType("text/html;charset=GBK");
pw.print(1);
pw.close();
}
}
本例子在winXPsp2、JB9、Eclipse3,j2sdk1.4.1 、Tomcat5、Tomcat4.1都能运行
分享到:
相关推荐
在JSP中,我们可以创建一个处理AJAX请求的Servlet。Servlet是Java Web应用中的一个组件,用于接收HTTP请求并返回响应。在分页场景中,Servlet会根据请求参数(如当前页数)查询数据库并返回所需的数据。 接下来,...
当Ajax与JSP结合时,可以在客户端使用Ajax进行异步请求,而后端由JSP处理请求并返回数据,两者配合能构建高效且响应快速的Web应用。 **Ajax的工作原理:** 1. 用户触发一个Ajax事件,例如点击按钮。 2. JavaScript...
总之,这个Ajax JSP例子是学习Web开发中异步交互的一个实例,通过实际操作,你可以更好地掌握Ajax技术和JSP的结合应用,从而提升网页的动态性和用户体验。在实际工作中,Ajax已经被广泛应用于各种Web应用,如实时...
**Ajax在JSP中的应用** Ajax(Asynchronous JavaScript and XML)是一种在无需刷新整个网页的情况下,能够更新部分网页的技术。它允许网页与服务器进行异步通信,极大地提升了用户体验,因为用户不再需要等待整个...
在IT行业中,Ajax(Asynchronous JavaScript and XML)与JSP(JavaServer Pages)结合使用时,可以实现网页的...通过学习和实现这样的例子,开发者可以深入理解Ajax和JSP在实际项目中的应用,以及如何优化用户体验。
《Ajax+JSP网站开发从入门到精通》的源代码,全书共分为16章,包括JSP的基础知识、JSP...本书适合于中、高级Ajax+JSP网站开发人员,特别适合于有编程基础,希望全面学习Ajax+JSP技术,想提高实际应用能力的读者群体。
### AJAX在JSP、Struts、Servlet、WebWork中的应用 #### 一、引言 随着Web技术的发展,用户对网站交互性和响应速度的要求越来越高。AJAX(Asynchronous JavaScript and XML)作为一种新兴的技术,能够在不重新加载...
在`validate()`函数中,使用Ajax向服务器发送GET请求,请求URL指向一个JSP页面(如`Del1.jsp`)。此JSP页面将处理请求,从数据库中提取数据,并返回结果。 #### 步骤四:处理响应 在`callback()`函数中,检查...
在JSP(JavaServer Pages)中使用AJAX,可以提升用户体验,使得页面交互更加流畅,数据更新更加即时。 **AJAX的工作原理** AJAX的核心是XMLHttpRequest对象,它允许在后台与服务器交换数据并更新部分网页内容。当...
在这个“Ajax运用下的简易JSP+Mysql”项目中,我们将探讨如何利用Ajax与JSP、MySQL数据库结合,通过JDBC(Java Database Connectivity)接口进行数据交互。 首先,JSP(JavaServer Pages)是Java的一种动态网页技术...
在网页开发中,AJAX...总之,"ajax实现jsp页面表格"是一个基础但实用的教程,涵盖了AJAX技术在网页动态更新中的应用,结合了JSP、JavaScript、数据库和JSON,为初学者提供了一个了解现代Web开发技术的实践平台。
在IT行业中,Ajax(Asynchronous JavaScript and XML)技术被广泛应用于构建交互性强、用户体验良好的Web应用程序。Ajax允许我们在不刷新整个网页的情况下,从服务器获取数据并局部更新页面内容,极大地提高了网页的...
在本"Ajax网站开发典型实例JSP源码包"中,我们可以深入学习如何使用Ajax与JavaServer Pages (JSP) 结合,创建高效动态的Web应用。 1. **Ajax基础** Ajax的核心是JavaScript对象XMLHttpRequest,它允许JavaScript在...
在IT行业中,Ajax(Asynchronous JavaScript and XML)与JSP(JavaServer Pages)结合使用能够创建高度交互且响应迅速的Web应用。这里的“ajax+jsp分页控件”是一种技术解决方案,它允许用户在不刷新整个页面的情况...
### 在JSP中运用AJAX(简单入门) 随着互联网技术的发展与用户对交互体验要求的提高,AJAX技术因其能够实现网页的异步更新而受到广泛欢迎。本篇文章将通过一个具体的示例来介绍如何在JSP页面中使用AJAX进行简单的...
在这个"超简单的ajax+jsp实现2级联动"的例子中,我们将探讨如何利用AJAX(Asynchronous JavaScript and XML)技术和JavaServer Pages (JSP)来实现这种功能。 首先,我们需要了解AJAX的基本原理。AJAX允许网页在不...
"jsp中使用ajax实现web进度条"这个主题就是关于如何在Java Server Pages (JSP)中利用Asynchronous JavaScript and XML (AJAX)技术来创建一个动态显示文件上传进度的组件。下面将详细介绍这一过程中的关键知识点。 1...
在Web开发中,分页是一种常见的用户界面设计技术,它用于处理大量的数据并提供良好的用户体验。...通过学习和理解这些代码,开发者可以更好地掌握如何在实际项目中运用jQuery、Ajax和JSP进行动态分页。
【Ajax与JSP实现购物车】\n\n在Web开发中,购物车功能是一个常见的需求,它涉及到用户选择商品、查看商品数量、调整数量以及结算等操作。在本项目中,“ajax实现购物车,无数据库操作”意味着我们将利用Ajax技术进行...
实验五主要涵盖了AJAX技术的运用以及JSP验证码的开发,这两个知识点对于前端开发者来说是至关重要的。AJAX,即Asynchronous JavaScript and XML(异步JavaScript和XML),它允许网页在不重新加载整个页面的情况下与...