请老师看看问题
来源:2-8 自由编程
披着鱼皮的猫
2019-05-06 14:22:10
点击按钮之后没反应,是哪里拼写错误了吗
Employees.java
public class Employees {
private String name;
private String position;
private String depart;
//构造方法
public Employees(String name, String position, String depart) {
super();
this.name = name;
this.position = position;
this.depart = depart;
}
public Employees() {
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPosition() {
return position;
}
public void setPosition(String position) {
this.position = position;
}
public String getDepart() {
return depart;
}
public void setDepart(String depart) {
this.depart = depart;
}
}EmployeeServlet
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;
/**
* Servlet implementation class EmployeeServlet
*/
@WebServlet("/Servlet")
public class EmployeeServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public EmployeeServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
List<Employees> list = new ArrayList<Employees>();
list.add(new Employees("小红","职员","人事部"));
list.add(new Employees("小明","职员","技术部"));
list.add(new Employees("小白","经理","无线事业部"));
String json = JSON.toJSONString(list);
System.out.println(json);
response.setContentType("text/html;charset=UTF-8");
response.getWriter().println(json);
}
}employee.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Insert title here</title>
</head>
<body>
<button id="btn1">员工列表</button>
<button id="btn2">职位列表</button>
<button id="btn3">部门列表</button>
<div id="con"></div>
<script type="text/javascript">
//1.创建XmlHttpRequesr对象
var xmlHttp;
xmlhttp = new XMLHttpRequest();
console.log(xmlhttp);
//2.发送Ajax请求
xmlhttp.open("GET","/Ajax/Servlet",true);
xmlhttp.send();
//3.处理服务器响应
//员工姓名
xmlhttp.onreadyStatechange=function() {
if(xmlhttp.readyStatechange==4&&xmlhttp.status==200) {
var text = xmlhttp.responseText;
var json = JSON.parse(text);
document.getElementById("btn1").onclick=function() {
var html="";
for(var i=0;i<json.length;i++) {
html = html+json[i].name+"</br>";
}
document.getElementById("con").innerHTML = html;
}
}
}
//员工职位
xmlhttp.onreadyStatechange=function() {
if(xmlhttp.readyStatechange==4&&xmlhttp.status==200) {
var text = xmlhttp.responseText;
var json = JSON.parse(text);
document.getElementById("btn2").onclick=function() {
var html="";
for(var i=0;i<json.length;i++) {
html = html+json[i].position+"</br>";
}
document.getElementById("con").innerHTML = html;
}
}
}
//部门列表
xmlhttp.onreadyStatechange=function() {
if(xmlhttp.readyStatechange==4&&xmlhttp.status==200) {
var text = xmlhttp.responseText;
var json = JSON.parse(text);
document.getElementById("btn3").onclick=function() {
var html="";
for(var i=0;i<json.length;i++) {
html = html+json[i].depart+"</br>";
}
document.getElementById("con").innerHTML = html;
}
}
}
</script>
</body>
</html>5回答
同学你好!同学的代码有两处有问题呢
点击事件写错了

应该是如下写法:

同学检验状态是写错了呢,应该是readyState同学写成了readyStatechange

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
披着鱼皮的猫
提问者
2019-05-06
55555再次调整了之后还是没有反应,控制台也不给我报错55

employee.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Insert title here</title>
</head>
<body>
<button id="btn1">员工列表</button>
<button id="btn2">职位列表</button>
<button id="btn3">部门列表</button>
<div id="con"></div>
<script type="text/javascript">
//1.创建XmlHttpRequesr对象
var xmlHttp;
xmlhttp = new XMLHttpRequest();
console.log(xmlhttp);
//员工姓名
document.getElementById("btn1").click(function(){
//2.发送Ajax请求
xmlhttp.open("GET","/Ajax/Servlet",true);
xmlhttp.send();
//3.处理服务器响应
xmlhttp.onreadystatechange=function(){
if(xmlhttp.readyStatechange==4&&xmlhttp.status==200) {
var text = xmlhttp.responseText;
var json = JSON.parse(text);
var html="";
for(var i=0;i<json.length;i++){
var emp = json[i];
html = html+emp.name+"</br>";
}
document.getElementById("con").innerHTML = html;
}
}
});
//员工职位
document.getElementById("btn2").click(function() {
//2.发送Ajax请求
xmlhttp.open("GET","/Ajax/Servlet",true);
xmlhttp.send();
//3.处理服务器响应
xmlhttp.onreadystatechange=function() {
if(xmlhttp.readyStatechange==4&&xmlhttp.status==200) {
var text = xmlhttp.responseText;
var json = JSON.parse(text);
var html="";
for(var i=0;i<json.length;i++) {
var emp = json[i];
html = html+emp.position+"</br>";
}
document.getElementById("con").innerHTML = html;
}
}
});
//部门列表
document.getElementById("btn3").click(function() {
//2.发送Ajax请求
xmlhttp.open("GET","/Ajax/Servlet",true);
xmlhttp.send();
//3.处理服务器响应
xmlhttp.onreadystatechange=function() {
if(xmlhttp.readyStatechange==4&&xmlhttp.status==200) {
var text = xmlhttp.responseText;
var json = JSON.parse(text);
var html="";
for(var i=0;i<json.length;i++) {
var emp = json[i];
html = html+emp.depart+"</br>";
}
document.getElementById("con").innerHTML = html;
}
}
});
</script>
</body>
</html>
好帮手慕柯南
2019-05-06
同学你好!同学的括号匹配有问题呢,建议同学仔细检查一下

同学以后遇到类似点击没有反映的问题,可以先看一下浏览器的控制台是否报错,然后根据报错信息排查原因,这样可以提高同学发现和解决问题的能力。有助于同学学习效果的提升~祝学习愉快~
披着鱼皮的猫
提问者
2019-05-06
调整了一下顺序之后还是点击按钮没有反应
employee.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Insert title here</title>
</head>
<body>
<button id="btn1">员工列表</button>
<button id="btn2">职位列表</button>
<button id="btn3">部门列表</button>
<div id="con"></div>
<script type="text/javascript">
//1.创建XmlHttpRequesr对象
var xmlHttp;
xmlhttp = new XMLHttpRequest();
console.log(xmlhttp);
//员工姓名
document.getElementById("btn1").onclick=function() {
//2.发送Ajax请求
xmlhttp.open("GET","/Ajax/Servlet",true);
xmlhttp.send();
//3.处理服务器响应
xmlhttp.onreadyStatechange=function() {
if(xmlhttp.readyStatechange==4&&xmlhttp.status==200) {
var text = xmlhttp.responseText;
var json = JSON.parse(text);
var html="";
for(var i=0;i<json.length;i++) {
html = html+json[i].name+"</br>";
}
document.getElementById("con").innerHTML = html;
}
}
}
//员工职位
document.getElementById("btn2").onclick=function() {
//2.发送Ajax请求
xmlhttp.open("GET","/Ajax/Servlet",true);
xmlhttp.send();
//3.处理服务器响应
xmlhttp.onreadyStatechange=function() {
if(xmlhttp.readyStatechange==4&&xmlhttp.status==200) {
var text = xmlhttp.responseText;
var json = JSON.parse(text);
var html="";
for(var i=0;i<json.length;i++) {
html = html+json[i].position+"</br>";
}
document.getElementById("con").innerHTML = html;
}
}
//部门列表
document.getElementById("btn3").onclick=function() {
//2.发送Ajax请求
xmlhttp.open("GET","/Ajax/Servlet",true);
xmlhttp.send();
//3.处理服务器响应
xmlhttp.onreadyStatechange=function() {
if(xmlhttp.readyStatechange==4&&xmlhttp.status==200) {
var text = xmlhttp.responseText;
var json = JSON.parse(text);
var html="";
for(var i=0;i<json.length;i++) {
html = html+json[i].depart+"</br>";
}
document.getElementById("con").innerHTML = html;
}
}
</script>
</body>
</html>
好帮手慕柯南
2019-05-06
同学你好!要点击按钮之后再去发送ajax请求哦,可参考如下代码:
如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
相似问题