2-8自由编程

来源:2-8 自由编程

qq_慕UI0173712

2019-09-26 00:41:28

不知道为什么这样做就会出粗,不太懂这里点击按钮的时候,就能出现相应的内容

这是test2.html的代码

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<input type="submit" value="A" id="A1"/>

<input type="submit" value="B" id="B1"/>
<input type="submit" Value="C"/>
<div id="peo"></div>
<body>
<script type="text/javascript" src="js/jquery-3.4.1.min.js"></script>
<script type="text/javascript">
//1.创建XmlHttpResquest
var xmlhttp;
if(window.XMLHttpRequest){
	xmlhttp = new XMLHttpRequest();
}else{
	xmlhttp= new ActiveXObject("Microsoft.XMLHTTP");
}
//2.发送Ajax请求
xmlhttp.open("GET","/jQuery/test2_list",true);
xmlhttp.send();
//3.处理服务器响应

xmlhttp.onreadystatechange = function(){
	if(xmlhttp.readyState ==4&& xmlhttp.status ==200){
		var textA= xmlhttp.responseText;
		console.log(textA);
		var json=JSON.parse(textA);
		console.log(json);
		var html="";

		for (var i=0;i<json.length;i++){
			var people =json[i];
			html=html+"<h2>"+people+"</h2>";
		}
		
		
		
		
		//-----------------
		var textB= xmlhttp.responseText;
		console.log(textB);
		var jsonB=JSON.parse(textB);
		console.log(jsonB);
		var htmlB="";

		for (var i=0;i<jsonB.length;i++){
			var peopleB =jsonB[i];
			htmlB=htmlB+"<h2>"+peopleB+"</h2>";
		}
		
		
		
		
		
		
		$("#A1").on("click",function(){
			
	
		document.getElementById("peo").innerHTML=html;
		})
		
		
		$("#B1").on("click",function(){
			
	
		document.getElementById("peo").innerHTML=htmlB;
		})
	}
}


</script>
</body>
</html>

这是test2Servlet的代码

package com.winking.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;

/**
 * Servlet implementation class test2Servlet
 */
@WebServlet("/test2_list")
public class test2Servlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public test2Servlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		List listA=new ArrayList();
		listA.add("A1");
		listA.add("A2");
		listA.add("A3");
		
		List listB=new ArrayList();
		listB.add("B1");
		listB.add("B2");
		listB.add("B3");
		
		List listC=new ArrayList();
		listC.add("C1");
		listC.add("C2");
		listC.add("C3");
		
		String jsonA =JSON.toJSONString(listA);
		System.out.print(jsonA);
		response.setContentType("text/html;charset=UTF-8");
		response.getWriter().println(jsonA);
//		
	String jsonB =JSON.toJSONString(listB);
	System.out.print(jsonB);
//		response.setContentType("text/html;charset=UTF-8");
		response.getWriter().println(jsonB);
//		
//		String jsonC =JSON.toJSONString(listC);
//		System.out.print(jsonC);
//		response.setContentType("text/html;charset=UTF-8");
//		response.getWriter().println(jsonC);
	}

	

}


写回答

1回答

好帮手慕小班

2019-09-26

同学你好,1、这里我们可以为每个按钮添加一个单击事件,在这个单击事件中发送ajax请求,得到响应数据,将数据展示到页面中,但是同学贴出的代码是在一个ajax请求中添加事件,这样的写法在解析时,可能出现问题,这里同学可以参考https://class.imooc.com/course/qadetail/124368   这个问答中的代码来修改一下自己代码。

获取当前的按钮,添加单击事件,在当前事件中发送ajax请求,得到响应数据,展示到页面

2、注意按钮为submit是form的提交按钮,这里建议改为button,一个普通按钮。

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

0

0 学习 · 9666 问题

查看课程