Ajax不是一种技术。实际上,它由几种蓬勃发展的技术以新的强大方式组合而成。Ajax包含:
- 基于XHTML和CSS标准的表示;
- 使用Document Object Model进行动态显示和交互;
- 使用XMLHttpRequest与服务器进行异步通信;
- 使用JavaScript绑定一切。
XMLHttpRequest对象是当今所有AJAX和Web 2.0应用程序的技术基础。
/*选择车牌照号自动读取车辆的车辆名称和所属部门*/
/*select标签的onchangeh*/
function showOther(carno,obj){
var value = carno;
if (value == null){
value ="";
}
if (value == ""){
document.all.CARNAME.value = ""; //车辆名称
document.all.DEPTNAME.value = ""; //所属部门
return;
}
var xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
xmlHttp.open("post","../../GenHttpXmlSlet?act=get&flag=12¶meter="+carno,false);
xmlHttp.setRequestHeader("context-type","text/xml;charset=utf-8");
xmlHttp.send("testing");
var showstr=xmlHttp.responseText;
if(showstr=="0"){
alert("所选车牌号信息无效,请重新选择!");
document.all.CARNAME.value = ""; //车辆名称
document.all.DEPTNAME.value = ""; //所属部门
return;
}
var arr = showstr.split(",");//分割
document.all.CARNAME.value = arr[0];//车辆名称
document.all.DEPTNAME.value = arr[1];//所属部门
}
GenHttpXmlSlet.java
/*
* 创建日期 2007-5-9
*
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
package com.san30.jwbz.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.HashMap;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.san30.common.tools.*;
import com.san30.comInterface.CurrentUserAccount;
import com.san30.comInterface.InterfaceHelper;
import com.san30.common.db.DbHandlerWithSharePool;
import com.san30.common.tools.StrTools;
import com.san30.jwbz.pub.PubMethod;
public class GenHttpXmlSlet extends HttpServlet {
private static final String CONTENT_TYPE = "text/xml;charset=utf-8";
// Initialize global variables
public void init() throws ServletException {
}
// Process the HTTP Get request
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType(CONTENT_TYPE);
request.setCharacterEncoding("utf-8");
PrintWriter out = response.getWriter();
DbHandlerWithSharePool dbh = new DbHandlerWithSharePool();
dbh.open();
try{
String parameter= StrTools.transEncoding(StrTools.transNull(request.getParameter("parameter"))); //传入参数
String flag= StrTools.transNull(request.getParameter("flag")); //传入参数
String sql="";
String Restring="";
//根据车牌照号自动读取车辆的车辆名称和所属部门
if("12".equals(flag)){
sql="select * from carbase_info where FIRCARNUMBER='"+parameter+"'";
ResultSet rs = dbh.executeQuery(sql);
// 处理车辆信息
while(rs.next()){
String carName=Tools.trim(StrTools.transNull(rs.getString("CARNAME")));//车辆名称
String deptName=Tools.trim(StrTools.transNull(rs.getString("USEDEPTNAME")));//所属部门名称
Restring=carName+","+deptName;
}
if(Restring.equals("")){
out.println("0");
}else{
out.println(Restring);
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
// Clean up resources
public void destroy() {
}
}