二级菜单返回的数据为空是哪里出错了
来源: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回答
同学你好。看下图中的两个位置,''内不要有空格,这样拼接会导致传过去的参数是有空格的

如果还有疑问,可以继续提问。如果解答了同学的疑问,望采纳~
祝学习愉快~
相似问题