zoukankan      html  css  js  c++  java
  • struts2+ajax+jquery

    struts2+ajax+jquery

    ajax交互

    index.jsp

    <%@ page language="java" contentType="text/html; charset=UTF-8"
    
                pageEncoding="UTF-8"%>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    
    <html>
    
    <head>
    
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    
    <title>Insert title here</title>
    
    <script type="text/javascript" src="js/jquery-1.12.3.js"></script>
    
    <script type="text/javascript">
    
                $(function() {
    
                            $("input:eq(0)").click(function() {
    
                                        $.ajax({
    
                                                    url : "ajax/ajax.action",
    
                                                    data : "word='text交互'",
    
                                                    type : "post",
    
                                                    dataType : "text",
    
                                                    success : function(data) {
    
                                                                alert(data); 
    
                                                    },
    
    error : function(XMLHttpRequest, textStatus, errorThrowing) {
    
                                                                alert(textStaus);
    
                                                    }
    
                                        });
    
                            });
    
     
    
                            $("input:eq(1)").click(
    
                            function() {
    
                                        $.ajax({
    
                                        url : "json/json.action",
    
                                        data : {
    
                                                    "name" : "小明"
    
                                                    },
    
                                                    type : "post",
    
                                                    dataType : "text",
    
                                                    success : function(data) {
    
                                                    alert(data);
    
     
    
                                        $("textarea").html(data);
    
                            //如果返回值类型是text,则需要手动转换为js的json对象                                                           
    
                                        var obj = eval("(" + data + ")");
    
                                                                                        alert(obj.name+obj.age+obj.tel);
    
                            var users = obj.users;
    
                            for (var int = 0; int < users.length; int++) {
    
                            alert(user[i].username + "------------------"                                                                                    + users[i].password);
    
                                                                                        }
    
     
    
                                                                            },
    
    error : function(XMLHttpRequest, textStatus,errorThrowing) {
    
                                        alert(textStatus);
    
                                                                            }
    
                                                                });
    
                                                    });
    
                });
    
    </script>
    
     
    
    </head>
    
    <body>
    
                <input type="button" value="点击" />
    
                <br>
    
                <input type="button" value="json交互" />
    
                <br>
    
                <textarea rows="" cols=""></textarea>
    
    </body>
    
    </html>

    action:

    AjaxAction.java

    public class AjaxAction extends ActionSupport {
    
     
    
                  private String word;
    
     
    
                  public String getWord() {
    
                                return word;
    
                  }
    
     
    
                  public void setWord(String word) {
    
                                this.word = word;
    
                  }
    
     
    
                  public InputStream getContentStream() throws Exception {
    
                                return new ByteArrayInputStream("你好事假".getBytes("utf-8"));
    
                  }
    
     
    
                  @Override
    
                  public String execute() throws Exception {
    
                                System.out.println("AjaxAction.execute()" + word);
    
                                return SUCCESS;
    
                  }
    
     
    
    }

    JsonAction.java

    public class AjaxAction extends ActionSupport {
    
     
    
                  private String word;
    
     
    
                  public String getWord() {
    
                                return word;
    
                  }
    
     
    
                  public void setWord(String word) {
    
                                this.word = word;
    
                  }
    
     
    
                  public InputStream getContentStream() throws Exception {
    
                                return new ByteArrayInputStream("你好事假".getBytes("utf-8"));
    
                  }
    
     
    
                  @Override
    
                  public String execute() throws Exception {
    
                                System.out.println("AjaxAction.execute()" + word);
    
                                return SUCCESS;
    
                  }
    
     
    
    }

    JsonAction.java

    public class AjaxAction extends ActionSupport {
    
     
    
               private String word;
    
     
    
               public String getWord() {
    
                          return word;
    
               }
    
     
    
               public void setWord(String word) {
    
                          this.word = word;
    
               }
    
     
    
               public InputStream getContentStream() throws Exception {
    
                          return new ByteArrayInputStream("你好事假".getBytes("utf-8"));
    
               }
    
     
    
               @Override
    
               public String execute() throws Exception {
    
                          System.out.println("AjaxAction.execute()" + word);
    
                          return SUCCESS;
    
               }
    
     
    
    }

    stryts.xml

    <package name="ajaxp" namespace="/ajax" extends="struts-default">
    
                                <action name="ajax" class="com.clc.Action.AjaxAction">
    
                                              <result name="success" type="stream">
    
                                                            <!-- 当struts2解析这个结果的时候
    
                                                            也就是Action执行完了
    
                                                            需要使用一个输入流读取内容,然后再写入到网络的客户端 inputName用来指定从哪里读取
    
                                                                          将contentStream的首字母大写,加上get前缀,
    
                                                                          得到一个方法名getContentStream 会调用action中的这个方法得到一个输入流
    
                                                                          要求在Action中有一个getContentStream名字的方法 sInputStream类型的返回值类型 -->
    
                                                            <param name="inputName">contentStream</param>
    
                                                            <param name="contentCharSet">utf-8</param>
    
     
    
                                              </result>
    
                                </action>
    
                  </package>
    
                  <package name="jsonPk" namespace="/json" extends="json-default">
    
                                <action name="json" class="com.clc.Action.JsonAction">
    
     
    
                                              <result type="json">
    
                                                            <!-- 调用message的getter方法:getMessage()方法 -->
    
                                                            <!-- json的结果类型会将对象转换为json字符串,返回给客户端 -->
    
                                                            <param name="root">message</param>
    
                                              </result>
    
                                </action>
    
                  </package>
  • 相关阅读:
    poj 1789 每个字符串不同的字母数代表两个结点间的权值 (MST)
    poj 1251 poj 1258 hdu 1863 poj 1287 poj 2421 hdu 1233 最小生成树模板题
    poj 1631 最多能有多少条不交叉的线 最大非降子序列 (LIS)
    hdu 5256 最少修改多少个数 能使原数列严格递增 (LIS)
    hdu 1025 上面n个点与下面n个点对应连线 求最多能连有多少条不相交的线 (LIS)
    Gym 100512F Funny Game (博弈+数论)
    UVa 12714 Two Points Revisited (水题,计算几何)
    UVa 12717 Fiasco (BFS模拟)
    UVa 12718 Dromicpalin Substrings (暴力)
    UVa 12716 && UVaLive 6657 GCD XOR (数论)
  • 原文地址:https://www.cnblogs.com/chenglc/p/6923232.html
Copyright © 2011-2022 走看看