<%--
  Created by IntelliJ IDEA.
  User: zongwei
  Date: 2020/3/15
  Time: 下午10:51
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
    <script type="text/javascript" src="js/jquery-3.4.1.min.js"></script>
    <script>
        $(function(){
            var btn = $('#btn');
            btn.click(function(){
                $.ajax({
                    url : '/ajaxServlet',
                    type : 'post',
                    dataType : 'text',
                    success : function(data){
                        var text = $('#id');
                        text.before(data + '<br/>');
                    }
                })
            });
        });
    </script>
</head>
<body>
    <input type="text" name="id" id="id"/>
    <input id="btn" type="submit" value="提交" />
</body>
</html>
<%--
  Created by IntelliJ IDEA.
  User: zongwei
  Date: 2020/3/15
  Time: 下午11:25
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
    <script type="text/javascript" src="js/jquery-3.4.1.min.js"></script>
    <script>
        $(function(){
            var text = $('#btn');
            text.click(function(){
                $.ajax({
                    url : '/ajaxServlet2',
                    type : 'post',
                    dataType : 'json',
                    success : function(data){
                        $('#id').val(data.id);
                        $('#name').val(data.name);
                        $('#age').val(data.age);
                    }
                })
            })
        })
    </script>
</head>
<body>
    <input id="id" type="text" /><br/>
    <input id="name" type="text" /><br/>
    <input id="age" type="text" /><br/>
    <input type="button" id="btn" />
</body>
</html>
package com.claudxyz.servlet;
import com.claudxyz.entity.User;
import net.sf.json.JSONObject;
import net.sf.json.processors.JsonBeanProcessor;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet("/ajaxServlet2")
public class AjaxServlet2 extends HttpServlet {
    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        User user = new User("1","xxxx",20);
        JSONObject jsonObject = JSONObject.fromObject(user);
        resp.setCharacterEncoding("UTF-8");
        resp.getWriter().write(jsonObject.toString());
    }
}
package com.claudxyz.servlet;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@WebServlet("/changeServlet")
public class ChangeServlet extends HttpServlet {
    static private Map<String, List<String>> resultMap = new HashMap<>();
    static List<String> list = new ArrayList<>();
    static {
        list.add("鼓楼区");
        list.add("下关区");
        list.add("秦淮区");
        resultMap.put("南京市",list);
        list = new ArrayList<>();
        list.add("扬州A区");
        list.add("扬州B区");
        list.add("扬州C区");
        resultMap.put("扬州市",list);
        list = new ArrayList<>();
        list.add("镇江A区");
        list.add("镇江B区");
        list.add("镇江C区");
        resultMap.put("镇江市",list);
        list = new ArrayList<>();
        list.add("南京市");
        list.add("扬州市");
        list.add("镇江市");
        resultMap.put("江苏省",list);
        list = new ArrayList<>();
        list.add("杭州市");
        list.add("嘉兴市");
        list.add("温州市");
        resultMap.put("浙江省",list);
        list = new ArrayList<>();
        list.add("合肥市");
        list.add("滁州市");
        list.add("马鞍山市");
        resultMap.put("安徽省",list);
        list = new ArrayList<>();
        list.add("杭州A区");
        list.add("杭州B区");
        list.add("杭州C区");
        resultMap.put("杭州市",list);
    }
    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.setCharacterEncoding("UTF-8");
        String type = req.getParameter("type");
        String id = req.getParameter("id");
        switch (type){
            case "1" :
                List<String> cityMap = resultMap.get(id);
                String areaValue = cityMap.get(0);
                List<String> areaList = resultMap.get(areaValue);
                Map<String,Object> reslutMap = new HashMap<>();
                reslutMap.put("c",cityMap);
                reslutMap.put("a",areaList);
                JSONObject jsonObject = JSONObject.fromObject(reslutMap);
                resp.getWriter().write(jsonObject.toString());
                break;
            case "2" :
                List<String> areaMap = resultMap.get(id);
                JSONArray jsonArray = JSONArray.fromObject(areaMap);
                resp.getWriter().write(jsonArray.toString());
                break;
        }
    }
}
<%--
  Created by IntelliJ IDEA.
  User: claudxyz
  Date: 2020-3-16
  Time: 14:53
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
    <script type="text/javascript" src="js/jquery-1.8.0.js"></script>
    <script>
        $(function(){
            var province = $('#province');
            province.change(function(){
                var privinceValue = $(this).val();
                $.ajax({
                    url : '/J2eeProject/changeServlet',
                    type : 'POST',
                    data : 'id=' + privinceValue + '&type=1',
                    dataType : 'json',
                    success : function(data){
                        var cityValue = '';
                        for(var i = 0;i < data.c.length;i++){
                            cityValue += '<option value=' + data.c[i] + '>' + data.c[i] +'</option>'
                        }
                        $('#city').html(cityValue);
                        var areaValue = '';
                        for(var i = 0;i < data.a.length;i++){
                            areaValue += '<option value=' + data.a[i] + '>' + data.a[i] +'</option>'
                        }
                        $('#area').html(areaValue);
                    }
                })
            });
            var city = $('#city');
            city.change(function(){
                var cityValue = $(this).val();
                $.ajax({
                    url : '/J2eeProject/changeServlet',
                    type : 'POST',
                    data : 'id=' + cityValue  + '&type=2',
                    dataType : 'json',
                    success: function(data){
                        var area = '';
                        for(var i = 0;i < data.length;i++){
                            area += '<option value=' + data[i] + '>' + data[i] +'</option>'
                        }
                        $('#area').html(area);
                    }
                })
            });
        })
    </script>
</head>
<body>
    省:<select id="province" name="province">
        <option value="江苏省">江苏省</option>
        <option value="浙江省">浙江省</option>
        <option value="安徽省">安徽省</option>
    </select>
    市:<select id="city" name="city">
        <option value="南京市">南京市</option>
        <option value="扬州市">扬州市</option>
        <option value="镇江市">镇江市</option>
    </select>
    区:<select id="area" name="area">
        <option value="00_1_1">鼓楼区</option>
        <option value="00_1_2">下关区</option>
        <option value="00_1_3">江北新区</option>
    </select>
</body>
</html>原文:https://www.cnblogs.com/claduxyz/p/12501003.html