首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Ajax >

Ajax兑现二级联动菜单

2013-01-28 
Ajax实现二级联动菜单index.jsp:%@ page languagejava pageEncodingUTF-8%htmlheadtitle二

Ajax实现二级联动菜单
index.jsp:
Ajax兑现二级联动菜单<%@ page language="java" pageEncoding="UTF-8"%>
Ajax兑现二级联动菜单<html>
Ajax兑现二级联动菜单    <head>
Ajax兑现二级联动菜单        <title>二级菜单联动演示</title>
Ajax兑现二级联动菜单        <script type="text/javascript">
Ajax兑现二级联动菜单    var req;
Ajax兑现二级联动菜单    window.onload=function()
Ajax兑现二级联动菜单    {//页面加载时的函数
Ajax兑现二级联动菜单    }
Ajax兑现二级联动菜单    
Ajax兑现二级联动菜单    function Change_Select(){//当第一个下拉框的选项发生改变时调用该函数
Ajax兑现二级联动菜单      var province = document.getElementById('province').value;
Ajax兑现二级联动菜单      var url = "select?id="+ escape(province);
Ajax兑现二级联动菜单      if(window.XMLHttpRequest){
Ajax兑现二级联动菜单        req = new XMLHttpRequest();
Ajax兑现二级联动菜单      }else if(window.ActiveXObject){
Ajax兑现二级联动菜单        req = new ActiveXObject("Microsoft.XMLHTTP");
Ajax兑现二级联动菜单      }
Ajax兑现二级联动菜单      if(req){
Ajax兑现二级联动菜单        req.open("GET",url,true);
Ajax兑现二级联动菜单         //指定回调函数为callback
Ajax兑现二级联动菜单        req.onreadystatechange = callback;
Ajax兑现二级联动菜单        req.send(null);
Ajax兑现二级联动菜单      }
Ajax兑现二级联动菜单    }
Ajax兑现二级联动菜单    //回调函数
Ajax兑现二级联动菜单    function callback(){
Ajax兑现二级联动菜单      if(req.readyState ==4){
Ajax兑现二级联动菜单        if(req.status ==200){
Ajax兑现二级联动菜单          parseMessage();//解析XML文档
Ajax兑现二级联动菜单        }else{
Ajax兑现二级联动菜单          alert("不能得到描述信息:" + req.statusText);
Ajax兑现二级联动菜单        }
Ajax兑现二级联动菜单      }
Ajax兑现二级联动菜单    }
Ajax兑现二级联动菜单    //解析返回xml的方法
Ajax兑现二级联动菜单    function parseMessage(){
Ajax兑现二级联动菜单      var xmlDoc = req.responseXML.documentElement;//获得返回的XML文档
Ajax兑现二级联动菜单      var xSel = xmlDoc.getElementsByTagName('select');
Ajax兑现二级联动菜单      //获得XML文档中的所有<select>标记
Ajax兑现二级联动菜单      var select_root = document.getElementById('city');
Ajax兑现二级联动菜单      //获得网页中的第二个下拉框
Ajax兑现二级联动菜单      select_root.options.length=0;
Ajax兑现二级联动菜单      //每次获得新的数据的时候先把每二个下拉框架的长度清0
Ajax兑现二级联动菜单      
Ajax兑现二级联动菜单      for(var i=0;i<xSel.length;i++){
Ajax兑现二级联动菜单        var xValue = xSel[i].childNodes[0].firstChild.nodeValue;
Ajax兑现二级联动菜单        //获得每个<select>标记中的第一个标记的值,也就是<value>标记的值
Ajax兑现二级联动菜单        var xText = xSel[i].childNodes[1].firstChild.nodeValue;
Ajax兑现二级联动菜单        //获得每个<select>标记中的第二个标记的值,也就是<text>标记的值
Ajax兑现二级联动菜单        
Ajax兑现二级联动菜单        var option = new Option(xText, xValue);
Ajax兑现二级联动菜单        //根据每组value和text标记的值创建一个option对象
Ajax兑现二级联动菜单        
Ajax兑现二级联动菜单        try{
Ajax兑现二级联动菜单          select_root.add(option);//将option对象添加到第二个下拉框中
Ajax兑现二级联动菜单        }catch(e){
Ajax兑现二级联动菜单        }
Ajax兑现二级联动菜单      }
Ajax兑现二级联动菜单    }        
Ajax兑现二级联动菜单  </script>
Ajax兑现二级联动菜单    </head>
Ajax兑现二级联动菜单
Ajax兑现二级联动菜单    <body>
Ajax兑现二级联动菜单        <div align="center">
Ajax兑现二级联动菜单            <form name="form1" method="post" action="">
Ajax兑现二级联动菜单                <table width="70%" border="0" cellspacing="0" cellpadding="0">
Ajax兑现二级联动菜单                    <tr>
Ajax兑现二级联动菜单                        <td align="center">
Ajax兑现二级联动菜单                            二级联动示例
Ajax兑现二级联动菜单                        </td>
Ajax兑现二级联动菜单                    </tr>
Ajax兑现二级联动菜单                    <tr>
Ajax兑现二级联动菜单                        <td>
Ajax兑现二级联动菜单                            <select name="province" id="province" onChange="Change_Select()">
Ajax兑现二级联动菜单                                <!--第一个下拉菜单-->
Ajax兑现二级联动菜单                                <option value="0">
Ajax兑现二级联动菜单                                    请选择
Ajax兑现二级联动菜单                                </option>
Ajax兑现二级联动菜单                                <option value="1">
Ajax兑现二级联动菜单                                    北京
Ajax兑现二级联动菜单                                </option>
Ajax兑现二级联动菜单                                <option value="2">
Ajax兑现二级联动菜单                                    天津
Ajax兑现二级联动菜单                                </option>
Ajax兑现二级联动菜单                                <option value="3">
Ajax兑现二级联动菜单                                    山东
Ajax兑现二级联动菜单                                </option>
Ajax兑现二级联动菜单                            </select>
Ajax兑现二级联动菜单                            <select name="city" id="city">
Ajax兑现二级联动菜单                                <!--第二个下拉菜单-->
Ajax兑现二级联动菜单                                <option value="0">
Ajax兑现二级联动菜单                                    请选择
Ajax兑现二级联动菜单                                </option>
Ajax兑现二级联动菜单                            </select>
Ajax兑现二级联动菜单                        </td>
Ajax兑现二级联动菜单                    </tr>
Ajax兑现二级联动菜单                    <tr>
Ajax兑现二级联动菜单                        <td>
Ajax兑现二级联动菜单                        </td>
Ajax兑现二级联动菜单                    <tr>
Ajax兑现二级联动菜单                </table>
Ajax兑现二级联动菜单            </form>
Ajax兑现二级联动菜单        </div>
Ajax兑现二级联动菜单    </body>
Ajax兑现二级联动菜单</html>
Ajax兑现二级联动菜单
SelectServlet:
Ajax兑现二级联动菜单package com;
Ajax兑现二级联动菜单
Ajax兑现二级联动菜单import java.io.IOException;
Ajax兑现二级联动菜单
Ajax兑现二级联动菜单import javax.servlet.ServletException;
Ajax兑现二级联动菜单import javax.servlet.http.HttpServlet;
Ajax兑现二级联动菜单import javax.servlet.http.HttpServletRequest;
Ajax兑现二级联动菜单import javax.servlet.http.HttpServletResponse;
Ajax兑现二级联动菜单/***
Ajax兑现二级联动菜单 * 
Ajax兑现二级联动菜单 * @author zdw
Ajax兑现二级联动菜单 *
Ajax兑现二级联动菜单 */
Ajax兑现二级联动菜单public class SelectServlet extends HttpServlet
Ajax兑现二级联动菜单{
Ajax兑现二级联动菜单
Ajax兑现二级联动菜单    private static final long serialVersionUID = 1L;
Ajax兑现二级联动菜单
Ajax兑现二级联动菜单    public SelectServlet()
Ajax兑现二级联动菜单    {
Ajax兑现二级联动菜单        super();
Ajax兑现二级联动菜单    }
Ajax兑现二级联动菜单
Ajax兑现二级联动菜单    public void destroy()
Ajax兑现二级联动菜单    {
Ajax兑现二级联动菜单        super.destroy();
Ajax兑现二级联动菜单    }
Ajax兑现二级联动菜单
Ajax兑现二级联动菜单    public void doGet(HttpServletRequest request, HttpServletResponse response)
Ajax兑现二级联动菜单            throws ServletException, IOException
Ajax兑现二级联动菜单    {
Ajax兑现二级联动菜单//        response.setCharacterEncoding("GBK");
Ajax兑现二级联动菜单        response.setContentType("text/xml");
Ajax兑现二级联动菜单        response.setHeader("Cache-Control", "no-cache");
Ajax兑现二级联动菜单        request.setCharacterEncoding("GBK");
Ajax兑现二级联动菜单        response.setCharacterEncoding("UTF-8");
Ajax兑现二级联动菜单        String targetId = request.getParameter("id").toString();
Ajax兑现二级联动菜单        System.out.println(targetId);
Ajax兑现二级联动菜单        // 获得请求中参数为id的值
Ajax兑现二级联动菜单        String xml_start = "<selects>";
Ajax兑现二级联动菜单        String xml_end = "</selects>";
Ajax兑现二级联动菜单        String xml = "";
Ajax兑现二级联动菜单
Ajax兑现二级联动菜单        if (targetId.equalsIgnoreCase("0"))
Ajax兑现二级联动菜单        {
Ajax兑现二级联动菜单            xml = "<select><value>0</value><text>请选择</text></select>";
Ajax兑现二级联动菜单        } else if (targetId.equalsIgnoreCase("1"))
Ajax兑现二级联动菜单        {
Ajax兑现二级联动菜单            xml = "<select><value>1</value><text>昌平</text></select>";
Ajax兑现二级联动菜单            xml += "<select><value>2</value><text>丰台</text></select>";
Ajax兑现二级联动菜单            xml += "<select><value>3</value><text>海淀</text></select>";
Ajax兑现二级联动菜单            xml += "<select><value>4</value><text>朝阳</text></select>";
Ajax兑现二级联动菜单        } else if (targetId.equalsIgnoreCase("2"))
Ajax兑现二级联动菜单        {
Ajax兑现二级联动菜单            xml = "<select><value>1</value><text>塘沽区</text></select>";
Ajax兑现二级联动菜单            xml += "<select><value>2</value><text>汉沽区</text></select>";
Ajax兑现二级联动菜单            xml += "<select><value>3</value><text>大港区</text></select>";
Ajax兑现二级联动菜单            xml += "<select><value>4</value><text>东丽区</text></select>";
Ajax兑现二级联动菜单        } else
Ajax兑现二级联动菜单        {// 如果是3,则返回下面的字符
Ajax兑现二级联动菜单            xml = "<select><value>1</value><text>济南</text></select>";
Ajax兑现二级联动菜单            xml += "<select><value>2</value><text>青岛</text></select>";
Ajax兑现二级联动菜单            xml += "<select><value>3</value><text>淄博</text></select>";
Ajax兑现二级联动菜单            xml += "<select><value>4</value><text>枣庄</text></select>";
Ajax兑现二级联动菜单        }
Ajax兑现二级联动菜单
Ajax兑现二级联动菜单        String last_xml = xml_start + xml + xml_end;
Ajax兑现二级联动菜单        response.getWriter().write(last_xml);
Ajax兑现二级联动菜单
Ajax兑现二级联动菜单    }
Ajax兑现二级联动菜单
Ajax兑现二级联动菜单    public void doPost(HttpServletRequest request, HttpServletResponse response)
Ajax兑现二级联动菜单            throws ServletException, IOException
Ajax兑现二级联动菜单    {
Ajax兑现二级联动菜单        doGet(request, response);
Ajax兑现二级联动菜单    }
Ajax兑现二级联动菜单
Ajax兑现二级联动菜单    public void init() throws ServletException
Ajax兑现二级联动菜单    {
Ajax兑现二级联动菜单    }
Ajax兑现二级联动菜单
Ajax兑现二级联动菜单}
Ajax兑现二级联动菜单
web.xml:
Ajax兑现二级联动菜单<?xml version="1.0" encoding="UTF-8"?>
Ajax兑现二级联动菜单<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
Ajax兑现二级联动菜单    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
Ajax兑现二级联动菜单    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
Ajax兑现二级联动菜单    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
Ajax兑现二级联动菜单    <servlet>
Ajax兑现二级联动菜单        <servlet-name>SelectServlet</servlet-name>
Ajax兑现二级联动菜单        <servlet-class>com.SelectServlet</servlet-class>
Ajax兑现二级联动菜单    </servlet>
Ajax兑现二级联动菜单
Ajax兑现二级联动菜单    <servlet-mapping>
Ajax兑现二级联动菜单        <servlet-name>SelectServlet</servlet-name>
Ajax兑现二级联动菜单        <url-pattern>/select</url-pattern>
Ajax兑现二级联动菜单    </servlet-mapping>
Ajax兑现二级联动菜单    <welcome-file-list>
Ajax兑现二级联动菜单        <welcome-file>index.jsp</welcome-file>
Ajax兑现二级联动菜单    </welcome-file-list>
Ajax兑现二级联动菜单</web-app>
Ajax兑现二级联动菜单源码下载

热点排行