jQuery.ajax 实现前后台数据传送

1、给出jsp文件。

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
   <script type="text/javascript" src="<%=path%>/js/jquery-1.4.2.js"></script>
   <script type="text/javascript" src="<%=path%>/js/my.js"></script>
    <title>My JSP 'index.jsp' starting page</title>
  </head>
  <body>
   <input type="button" id="btn" value="测试按钮"></input>
   <div id="panel"></div>
  </body>
</html>

2、给出my.js文件。

$(document).ready(function(){$("#btn").click(getData);});
function getData(){
   $.ajax({
        type: 'post',
        url: 'welcome.do',
        dataType: 'json',
        async:true,
        data:"id=huangyz&name=test&password=112358",
        success: function(responseText)
                  {
                   $("#panel").html(responseText[0]+"</br>"+responseText[1]+"</br>"+responseText[2]+"</br>");
                  } 
   })
  }

3、给出java类。

package com.huangyz.struts.action;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
public class WelcomeYou extends Action {
    private IWelcome welcome;
    private String persons[] = { "huangyz", "xielong", "zhanghaifeng" };
    public ActionForward execute(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response) {
              System.out.println(request.getParameter("id")+" "+request.getParameter("name")+" "+request.getParameter("password"));
               response.setContentType("text/plain;charset=utf-8");
        try {
            response.getWriter().write(toJsonArray(persons));
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    } 
    public String toJsonArray(Object[] obj) {
        String doubleQuote = "/"";
        StringBuffer jsonArray = new StringBuffer();
        // 添加左【
        jsonArray.append("[");
        // 拼串开始
        for (int i = 0; i < obj.length; i++) {
            jsonArray.append(doubleQuote);
            jsonArray.append(obj[i]);
            jsonArray.append(doubleQuote);
            jsonArray.append(",");
        }
        // 去掉最后的,
        jsonArray.deleteCharAt(jsonArray.lastIndexOf(","));
        // 添加右】
        jsonArray.append("]");
        // 转化为字符串
        String json = jsonArray.toString();
        // 清空buffer
        jsonArray.delete(0, jsonArray.length());
        return json;
    }
}

4、struts配置部分不再给出,更多细节参考相关文档。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值