`

初步体验Ajax异步提交

    博客分类:
  • Ajax
阅读更多
首页代码如下 index.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>
		<title>index.html</title>
		<!--<link rel="stylesheet" type="text/css" href="./styles.css">-->
		<script type="text/javascript" src="js/index.js"></script>
	</head>
	<body>
		<form action="/AjaxTest/Test">
			<p><!-- 提交后的号码会发到servlet,然后显示在下面的div标签里面 -->
				输入电话号码:
				<input type="text" size="14" name="phone" id="phone"
					onChange="getCustomerInfo();" />
			</p>
			
			<div id="address"></div>
			<p>
				下面会输出servlet里面的文字:
			</p>
			<p>
				<textarea name="order" rows="6" cols="50" id="order"></textarea>
			</p>
			<p>
				<input type="submit" value="提交" id="submit" />
			</p>
		</form>
	</body>
</html>

index.js  javascript文件

var request = false;
try
{// 根据浏览器的不同创建XMLHttpRequest对象
	request = new XMLHttpRequest ();
} catch ( trymicrosoft )
{
	try
	{
		request = new ActiveXObject ( "Msxml2.XMLHTTP" );
	} catch ( othermicrosoft )
	{
		try
		{
			request = new ActiveXObject ( "Microsoft.XMLHTTP" );
		} catch ( failed )
		{
			request = false;
		}
	}
}

if ( ! request )
	alert ( "Error initializing XMLHttpRequest!" );
/**
 * 在鼠标离开控件的时候在后台和服务器连接,异步提交
 */
function getCustomerInfo ()
{
	var phone = document.getElementById ( "phone" ).value;
	var url = "Test?phone=" + escape ( phone );// 请求地址
	request.open ( "GET" , url , true );// 以GET方式请求url,true表示请求是异步的
	request.onreadystatechange = updatePage;// 服务器返回成功后的回调函数
	request.send ( null );
}
/**
 * 服务器返回后调用的回调函数
 */
function updatePage ()
{
	if ( request.readyState == 4 )
	{
		if ( request.status == 200 )
		{// responseText得到返回文本字符串
			var response = request.responseText.split ( "|" );
			alert ( unescape ( response ) );
			document.getElementById ( "order" ).value = response[0];
			document.getElementById ( "address" ).innerHTML = response[1]
					.replace ( /\n/g , "" );
		} else
			alert ( "status is " + request.status );
	}
}

后台servlet文件:Test.java

package com.egt.ajax.servlet;

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;

/**
 * 
 * @Author 曹斌 Sep 6, 2008
 * @Email  caobin.cn@Gmail.com 
 * @Blog   www3.iteye.com
 * 
 * @Description
 */
public class Test extends HttpServlet
{
	public Test ()
	{
		super();
	}
	public void destroy ()
	{
		super.destroy(); 
	}

	public void doGet ( HttpServletRequest request ,
			HttpServletResponse response ) throws ServletException ,
			IOException
	{
		//这里要设置字符编码格式,否则GET方式要出现乱码。
		response.setContentType("text/HTML;charset=GBK");
		request.setCharacterEncoding("GBK");
		response.setCharacterEncoding("GBK");
		PrintWriter out = response.getWriter();
		out.println("servlet里面的GET方法文字|"+request.getParameter("phone"));
		out.flush();
		out.close();
	}

	public void init () throws ServletException
	{
	}

}

  

  • AjaxTest.rar (5.4 KB)
  • 描述: MyEclipse 项目原代码
  • 下载次数: 72
分享到:
评论
1 楼 撒地方 2012-08-08  

    [*]
[img][/img][url][/url][flash=[size=medium][/size][align=right][/align]200,200][/flash]
  

相关推荐

    关于ajax的初步认识

    1. **异步更新**:提高了用户体验,用户可以继续与页面交互,而无需等待整个页面刷新。 2. **资源利用率高**:只更新需要的部分,减少了数据传输量,降低了服务器负载。 3. **减少延迟**:相比于完整页面刷新,Ajax...

    jQuery多图上传带ajax提交

    通过以上步骤,我们可以构建一个完整的多图上传功能,包括前端的文件预览、Ajax异步提交,以及后台的文件接收和处理。这个功能在现代Web应用中非常常见,特别是在需要用户上传个人照片或产品图片的场景下。

    AJAX体验注册系统

    4. **前端验证**:在用户提交信息前,前端可以使用JavaScript进行初步的数据验证,比如检查邮箱格式是否正确、密码强度是否满足要求等。这可以提供即时反馈,减少无效的服务器请求。 5. **服务器端处理**:即使有...

    JSP+Ajax经典开发实例

    - 表单验证,前端JavaScript初步验证后,再通过Ajax提交数据至服务器进行深度校验。 通过这些实例,开发者可以深入理解JSP和Ajax如何协同工作,以及如何利用它们来创建高性能、高互动性的Web应用。掌握这些技能对于...

    AJAX+PHP实现的几种效果

    尽管XML在现代实践中已不再作为主要的数据交换格式,但AJAX的核心思想——异步数据传输和局部页面更新依然广泛应用。本资料包可能包含了一些使用AJAX和PHP实现的具体效果示例,对于不熟悉PHP的初学者来说,这是一个...

    Ajax的使用,验证码图片生成asp.net

    客户端首先使用JavaScript的正则表达式进行初步校验,然后通过Ajax将邮箱地址发送到服务器。服务器端再次进行更严格的格式检查,确保邮箱的合法性。如果邮箱格式有误,服务器会返回错误信息,客户端接收后更新提示。...

    Ajax无刷新分页编辑DataGrid

    它结合了Ajax(异步JavaScript和XML)技术的实时更新特性、分页功能以及DataGrid控件的数据管理能力,为用户提供流畅且高效的浏览和编辑体验,而无需每次交互都重新加载整个页面。 1. Ajax技术: Ajax的核心在于...

    ajax-表单验证

    **Ajax 表单验证**是Web开发中一种提高用户体验的技术,它允许在不刷新整个页面的情况下,通过异步方式向服务器发送数据并获取反馈。在传统的表单提交中,用户填写完信息点击提交按钮,页面会跳转或者重载,这在数据...

    ajax一个最简单的例子

    - **表单提交**:Ajax可以使用户在不刷新页面的情况下提交表单,提高交互体验。 - **实时数据更新**:例如天气预报、股票信息等,可以实时更新而无需手动刷新页面。 - **分页加载**:滚动页面时,动态加载更多内容。...

    Ajax登陆验证有助于更好的封装

    综上所述,Ajax登录验证通过异步通信提高了用户交互体验,但同时也需要开发者关注安全性、兼容性和性能优化等多个方面。在实际开发中,合理运用Ajax技术和相关框架,能为用户提供更加流畅和安全的登录验证过程。

    ajax网页设计+CSS设计

    - 通过Ajax实现表单提交,减少了用户等待时间。 - 使用CSS创建美观的布局和界面,可能包括响应式设计,使得网站在不同设备上都能良好显示。 - 通过CSS动画增强用户体验,如过渡效果、滑动面板等。 综合来看,这个...

    ajax的好好东西

    并非所有用户请求都需要直接提交至服务器,例如数据验证和初步处理等任务可由Ajax引擎本地完成,仅在确实需要从服务器获取新数据时,才由Ajax引擎代表用户向服务器发起请求。这种方式减少了不必要的网络通信,提高了...

    html5 Ajax表单验证实例.rar

    2. **JavaScript事件处理**:通过监听表单的提交事件,比如`onsubmit`,阻止默认的表单提交行为,转而使用Ajax进行数据提交。 3. **Ajax请求**:使用`XMLHttpRequest`对象或者现代浏览器支持的`fetch` API发送异步...

    ajax数据验证

    在"ajax数据验证"的场景中,我们通常会在客户端使用JavaScript对用户输入的数据进行初步检查,以减少服务器的负担和提高系统的响应速度。数据验证是确保用户输入符合预设规则的关键步骤,例如检查邮箱格式、手机号码...

    Ajax 新手快车道

    通过这些技术,开发者可以在后台与服务器进行通信,实现页面的异步更新,提升用户体验。 2. **XMLHttpRequest对象** Ajax的核心是XMLHttpRequest对象,它是浏览器内置的对象,用于在后台与服务器进行通信。通过...

    jquery,ajax,ssh实现登陆注册以及动态验证

    在登录注册场景下,我们可以使用AJAX发送异步请求,验证用户名和密码的有效性,避免用户等待整个页面刷新,提供更好的用户体验。 3. SSH(Spring Security、Struts2、Hibernate):SSH是一个经典的Java Web开发框架...

    Struts2与Ajax结合输入验证[包含功能代码段]

    将Struts2与Ajax结合,可以实现动态、异步的数据验证,提高应用的响应速度和效率。 在Struts2中,输入验证是必不可少的一环,它确保用户提交的数据符合预设的规则,如非空检查、数据类型验证等。传统的验证方式通常...

Global site tag (gtag.js) - Google Analytics