发布网友 发布时间:2022-05-10 05:53
共1个回答
热心网友 时间:2022-04-23 01:25
使用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; }