欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

AJAX根据城市名,自动完成相应的城市信息

程序员文章站 2022-03-31 13:45:16
以前在做项目的时候碰到这样的需求。用户希望能够直接输入城市的名字,就能够得到这个城市的相应的信息。以前是在页面打开的时候生成几个javascript数组,然后来对比的。这样...
以前在做项目的时候碰到这样的需求。用户希望能够直接输入城市的名字,就能够得到这个城市的相应的信息。以前是在页面打开的时候生成几个javascript数组,然后来对比的。这样做的话,如果数据比较多的时候,用户会明显的感到响应延迟。

    现在该成用ajax的方法来做,速度要快一些,客户体验会好一些。谁要咱们处在“体验经济”时代呢!

    下面是做的一个小例子,由两个页面组成。

    city.html页代码如下: 


[ctrl+a 全选 注:如需引入外部js需刷新才能执行]
 

zipcode.jsp代码如下: 
复制代码 代码如下:

<%@ page contenttype="text/html;charset=gb2312" %> 

<%@ page import="java.util.*" %> 
<%@ page import="java.sql.connection"%> 
<%@ page import="java.sql.preparedstatement"%> 
<%@ page import="java.sql.resultset"%> 

<%@ page import="com.util.myconnection"%> 
<% 
string city = request.getparameter("city"); 

if(city==null) 

 city= ""; 

if(!city.equals("")) 

 string sql="select citrmm,cittier from tb_basecity where citname like '"+city+"'"; 
 connection conn = myconnection.getconnection(); 
 preparedstatement state= conn.preparestatement(sql); 
 resultset rs = state.executequery(); 

 if(rs.next()) 
 { 
  out.println(rs.getstring("citrmm")+"|"+rs.getstring("cittier")); 
 } 
 else 
 { 
  out.println("未知"+"|"+"未知"); 
 } 

 rs.close(); 
 state.close(); 
 conn.close(); 


else 

 out.println("未知"+"|"+"未知"); 


%> 
 
ps:
    http.send()后,经检测http.readystate==4,说明载入完毕,这时网页内容已经载入 到了http.responsebody中了