DWR实现二级联动下拉框

JSP代码如下:

  1. <select id="pro" onchange="selectPro();">
  2.     <option>
  3.         --请选择省份--
  4.     </option>
  5.     <option value="江西省">
  6.         江西省
  7.     </option>
  8.     <option value="JiangSu">
  9.         江苏省
  10.     </option>
  11.     <option value="ZheJiang">
  12.         浙江省
  13.     </option>
  14. </select>
  15. <select id="city">
  16.     <option>
  17.         --请选择城市--
  18.     </option>
  19. </select>

JavaScript代码如下:

  1. <script type='text/javascript' src='/DWRDemo/dwr/interface/cityList.js''></script>
  2. <script type='text/javascript' src='/DWRDemo/dwr/engine.js'></script>
  3. <script type='text/javascript' src='/DWRDemo/dwr/util.js'></script>
  4. <script type='text/javascript'>
  5.     function selectPro(){
  6.         var pro=DWRUtil.getValue("pro");            
  7.         cityList.getCity(pro,updateCity);               
  8.     }
  9.     function updateCity(citys){ 
  10.         citys.unshift("--请选择城市--");
  11.         DWRUtil.removeAllOptions("city");   
  12.         DWRUtil.addOptions("city",citys);
  13.     }
  14. </script>

Java代码如下:

  1. public class CityList {
  2.     static Map cityMap;
  3.     static {
  4.         cityMap = new HashMap();
  5.         String[] city = new String[]{"南昌","九江","吉安"};
  6.         cityMap.put("江西省", city);
  7.         city = new String[]{"南京","苏州","镇江"};
  8.         cityMap.put("JiangSu", city);
  9.         city = new String[]{"杭州","温州"};
  10.         cityMap.put("ZheJiang", city);
  11.     }
  12.     public String[] getCity(String pro){
  13.         return (String[])cityMap.get(pro);
  14.     }
  15. }

dwr.xml代码如下:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://getahead.org/dwr/dwr20.dtd">
  3. <dwr>
  4.     <allow>
  5.         <create creator="new" javascript="helloDemo">
  6.             <param name="class"
  7.                 value="org.getahead.dwrdemo.simpletext.Hello" />
  8.             <include method="sayHello" />
  9.             <include method="sayHello2" />
  10.         </create>
  11.         <create creator="new" javascript="people">
  12.             <param name="class" value="com.People" />
  13.         </create>
  14.         <create creator="new" javascript="cityList">
  15.             <param name="class" value="com.CityList" />
  16.         </create>
  17.     </allow>
  18. </dwr>

web.xml代码如下:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
  3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4.     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee  
  5.     http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> 
  6.     <servlet>
  7.         <servlet-name>dwr-invoker</servlet-name>
  8.         <display-name>DWR Servlet</display-name>
  9.         <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
  10.         <init-param>
  11.             <param-name>debug</param-name>
  12.             <param-value>true</param-value>
  13.         </init-param>
  14.     </servlet>
  15.     <servlet-mapping>
  16.         <servlet-name>dwr-invoker</servlet-name>
  17.         <url-pattern>/dwr/*</url-pattern>
  18.     </servlet-mapping>
  19.     
  20.     <welcome-file-list>
  21.         <welcome-file>index.jsp</welcome-file>
  22.     </welcome-file-list>
  23. </web-app>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值