zoukankan      html  css  js  c++  java
  • 基于Struts2的ajax的用法

      在做JavaWeb的时候遇到一个问题,addUser的form表单我想用ajax的方式进行提交,前台数据和用Servlet一样提交,但是后台数据怎么传过来呢。

    首先复习一下ajax如何提交数据:

      $.ajax({
                    type:"POST",
                    url:"add.action",
                    data: data + "&timeid=" + new Date() + "" + Math.random(),
                    success:function(json){

            }
                      });

    但是sussess之后我就不会写了,怎么能传过来呢

    百度了一下,基于Struts2的ajax使用有两种方法:

      第一:用原生的方法,不依赖于任何插件。

        HttpServletResponse response = ServletActionContext.getResponse();  

        PrintWriter writer = response.getWriter();

        writer.print("hello "); 

        writer.flush(); 

        writer.close(); 

      第二:使用struts2-json-plugin,将jar包拷贝入WEB-INF/lib就可以了

    使用这种方法要注意一下几个方面:

    (1)Result的返回类型是json(@Result(name="addsuccess",type="json"))

    (2)构造一个map去获取值和传递值  private Map<String,Object> map;  (注意要有get、set方法)

      map.put("result", "success");(你要传递的值)

    在jsp里的ajax中这么用:

            success:function(json){
                                      if(json.map.result=="success")
                                          {
                                          alert("注册成功,请登录");
                                          window.location.href="init.action";
                                          }
                                      else
                                      {
                                          alert("注册失败");
                                          window.location.href="init.action";        
                                      }

  • 相关阅读:
    mysql基本命令(转)
    查找大文件
    vim/vi 复制,删除,粘贴,查找,替换
    redhat 6用yum方式安装nginx
    解决yum安装时 Cannot retrieve repository metadata (repomd.xml) for repository
    RHEL6解决无法使用YUM源问题(转)
    Linux 信号概念
    Linux 进程通信(共享内存区)
    Linux 进程通信(有名管道)
    Linux 进程通信(无名管道)
  • 原文地址:https://www.cnblogs.com/zmlion1995/p/5796656.html
Copyright © 2011-2022 走看看