二级菜单返回的数据为空是哪里出错了
来源:3-8 实现二级联动菜单-2
Heisenberg_bo
2019-03-19 02:04:34
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> <script type="text/javascript" src="js/jquery-3.3.1.min.js"></script> <script type="text/javascript"> $(function (){ $.ajax({ "url":"/Ajax/Caidan", "data":{"level":"1"}, "type":"GET", "dataType":"json", "success": function (json) { for(var i = 0 ; i < json.length; i ++){ var kc = json[i]; $("#lv1").append("<option value = ' "+kc.code+" '>" + kc.name + "</option>"); } } }) }) $(function(){ $("#lv1").on("change",function(){ var ls = $(this).val(); console.log(ls); $.ajax({ "url":"/Ajax/Caidan", "data":{"level":"2","two" : ls}, "type":"GET", "dataType":"json", "success": function (json) { console.log(json); for(var i = 0 ; i < json.length; i ++){ var c = json[i]; $("#lv2").append("<option value = ' "+c.code+" '>" + c.name + "</option>"); } } }) }) }) </script> </head> <body> <select id ="lv1" style="width: 300px;height: 50px"> <option value="selected">请选择教程</option> </select> <select id ="lv2" style="width: 300px;height: 50px"></select> </body> </html>
package com.imooc.ajax;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
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 com.alibaba.fastjson.JSON;
import javafx.scene.control.Alert;
/**
* Servlet implementation class Caidan
*/
@WebServlet("/Caidan")
public class Caidan extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//显示几级菜单
String level = request.getParameter("level");
//菜单名称
String two = request.getParameter("two");
List<CaiDang> list = new ArrayList<>();
if(level.equals("1")) {
list.add(new CaiDang("ai","区块链/深度学习"));
list.add(new CaiDang("web","前端/后端"));
}else if(level.equals("2")) {
if(two.equals("ai")) {
list.add(new CaiDang("q","区块链"));
list.add(new CaiDang("sd","深度学习"));
list.add(new CaiDang("sj","神经网络"));
list.add(new CaiDang("r","人工智能"));
}else if(two.equals("web")) {
list.add(new CaiDang("h","Html"));
list.add(new CaiDang("j","JAVA"));
list.add(new CaiDang("c","CSS"));
list.add(new CaiDang("js","JS"));
}
}
//把数据转成JSON
String json = JSON.toJSONString(list);
response.setContentType("text/html;charset=utf-8");
response.getWriter().println(json);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
1回答
同学你好。看下图中的两个位置,''内不要有空格,这样拼接会导致传过去的参数是有空格的
如果还有疑问,可以继续提问。如果解答了同学的疑问,望采纳~
祝学习愉快~
相似问题