使用AJAX将选择框列表从servlet发送到JSP

使用AJAX将选择框列表从servlet发送到JSP,ajax,jsp,servlets,Ajax,Jsp,Servlets,我正在获取公司名称选择框的动态数据。根据这些值,我需要为业务区域选择框填充数据。为此,我通过AJAX调用servlet 在servlet中,我获得了基于公司名称的业务领域列表,但我不明白如何将此列表传递给JSP代码 我正在获取选择框的动态数据,如下所示: 公司名称: <select id="company_id" onchange="getBusinessArea()"> <option selected="selected">--Select One--<

我正在获取公司名称选择框的动态数据。根据这些值,我需要为业务区域选择框填充数据。为此,我通过AJAX调用servlet

在servlet中,我获得了基于公司名称的业务领域列表,但我不明白如何将此列表传递给JSP代码

我正在获取选择框的动态数据,如下所示:

公司名称:

<select id="company_id" onchange="getBusinessArea()">
    <option selected="selected">--Select One--</option>
    <% for (String txt : new ExtractDao().getCompanies()) {%>
    <option><%=txt%></option>
    <%}%>
</select>
我的Servlet代码:

public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        ExtractService extService = null;
        PrintWriter out = response.getWriter();
        response.setContentType("text/html");
        String companyName = request.getParameter("companyName");
        extService = new ExtractService();
        List<String> bList = extService.getBusinessAreas(companyName);
    }
}

有人能帮我展示一下如何为business area select box填充数据吗?

您需要将数据作为json发送并在客户端解析。看一看
function getBusinessArea() {
        var elem = document.getElementById("company_id");
        var selectedNode = elem.options[elem.selectedIndex].value;
        window.alert(selectedNode);
        var xmlhttp;
        var companyData = "${pageContext.request.contextPath}/ExtractController?companyName="
                + selectedNode;

        if (window.XMLHttpRequest) {
            xmlhttp = new XMLHttpRequest();
        } else {
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }

        window.alert(companyData);
        xmlhttp.open("GET", companyData, true);
        xmlhttp.send();
        if (http_request.readyState == 4) {
            if (http_request.status == 200) {
                alert(http_request.responseText);
            } else {
                alert('There was a problem with the request.');
            }
        }
    }
public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        ExtractService extService = null;
        PrintWriter out = response.getWriter();
        response.setContentType("text/html");
        String companyName = request.getParameter("companyName");
        extService = new ExtractService();
        List<String> bList = extService.getBusinessAreas(companyName);
    }
}