在jsp页面上改变页面的数据,但页面不刷新的方法有哪些
- 提问者网友:蔚蓝的太阳
- 2021-08-18 18:12
- 五星知识达人网友:千夜
- 2021-08-18 18:37
使用Ajax实现,单纯的使用JavaScript不可以与后台进行数据交互。
jquary是JavaScript框架,可以简化Ajax的操作,原始的Ajax方法不再详述,
这里给给使用jquary的Ajax方法:
一:前台页面:
<script type="text/javascript">
function checkUserName(){
$.ajax({
type: "POST",//请求的方式,有“GET”、“POST”
url: "User.do?method=jqueryAjax",//请求的URL,这里使用了struts框架
data: "name=hejiyuan",//发送的数据
dataType: "xml",//返回的数据格式
success: callback //交互完成后,并且正确响应的回调函数
});
}
function callback(data){
//首先将DOM对象转换成jQuery对象
var jquaryOBJ = $(data);
var city = jquaryOBJ.children();
var text = city.text();
}
</script>
<body>
<input id="name" type="text" />
<input type="button" value="验证" onclick="checkUserName()">
<div id="returnValue"></div>
</body>
二、后台action方法代码
public ActionForward jqueryAjax2(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
response.setCharacterEncoding("GBK");
// 注意返回的数据类型设置为XML类型
response.setContentType("text/xml");
PrintWriter out = response.getWriter();
StringBuffer buffer = new StringBuffer();
buffer.append("<?xml version=\"1.0\" encoding=\"GBK\"?>");
buffer.append("<citys><city><name>永安</name><value>7</value></city>"
+ "<city><name id='2'>沙县</name><value>8</value></city></citys>");
out.println(buffer.toString());
out.flush();
out.close();
return null;
}
- 1楼网友:孤独的牧羊人
- 2021-08-18 20:27
- 2楼网友:天凉才是好个秋
- 2021-08-18 19:36