同一个jsp页面中 局部刷新问题

2025-04-06 18:36:37
推荐回答(4个)
回答1:

文件一; GetUser.java

package ajax;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class GetUser extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String userno=request.getParameter("no");

List list=new ArrayList();

User user1=new User();
User user2=new User();
User user3=new User();
user1.setNo("101");
user1.setUsername("wei");
user1.setSex("man");

user2.setNo("102");
user2.setUsername("xiang");
user2.setSex("man");

user3.setNo("103");
user3.setUsername("yang");
user3.setSex("women");

list.add(user1);
list.add(user2);
list.add(user3);

PrintWriter out=response.getWriter();

response.setContentType("text/xml");
response.setCharacterEncoding("GB2312");

response.setHeader("Cache-Control", "no-cache");

out.println("");
out.println("");

for(int i=0;i
if(list.get(i).getNo().equalsIgnoreCase(userno)){
out.print(""+list.get(i).getUsername()+"");
out.print(""+list.get(i).getSex()+"");
}
}
out.println("
");
out.close();

}
}

文件二: User.java

package ajax;

public class User {
private String no;
private String username;
private String sex;
public String getNo() {
return no;
}
public void setNo(String no) {
this.no = no;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}

}

文件三: index.jsp

<%@ page language="java" pageEncoding="UTF-8" contentType="text/html; charset=GB2312"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>





display























学号



姓名



性别






文件四:web.xml


xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

GetUser
ajax.GetUser



GetUser
/GetUser




以Java的一个集合类 ArrayList 对象存储的几条数据为一个数据库

伪数据库。。。 可以把上面的集合类里面的数据记录当成是从数据库

中取出来的。。。

然后用Ajax 把 list 转换成 xml 文件

然后再用 javascript 解析 xml 文件无刷新动态显示到页面上

祝你早日成功!!!

回答2:

局部刷新是ajax异步刷新的一种叫法,异步刷新就是在整个页面没有刷新的情况下,刷新一部分页面,最要用在登陆验证和数据更新方面。


       web开发中我们经常会遇到局部刷新页面的需求,以前我经常使用ajax和iframe实现局部刷新,后来做政府的项目,对页面的样式要求比较多,发现使用iframe控制样式什么的很麻烦,所以就采用了新的办法,就是下面我们要说的ajax配合div局部刷新页面,其实很简单,下面我们就看一下这种刷新方式是如何实现的。

jsp页面ajax代码如下:

$("#waitWork").click(function(){
var url = "请求地址";
var data = {type:1};
$.ajax({
type : "get",
async : false,  //同步请求
url : url,
data : data,
timeout:1000,
success:function(dates){
//alert(dates);
$("#mainContent").html(dates);//要刷新的div
},
error: function() {
               // alert("失败,请稍后再试!");
            }
});
});

注意:后台需要针对div里的信息单独用一个jsp页面,不然就需要自己封装好需要的页面信息返回


参考:http://www.w3school.com.cn/jquery/ajax_ajax.asp

回答3:

你试一下这个,最简单的:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>






My JSP 'MyJsp.jsp' starting page




dfsaf




回答4:

如果这个数据是从数据库中读取的,那么需要用到AJAX,如果只是随意写的一些内容,那么可以直接使用JavaScript完成

例如:



New Document