Struts2框架与jQuery框架之间ajax的实现

用Struts2框架与jQuery框架实现网页的ajax功能:

作为一个初学者,刚刚接触前端的相关知识,研究了好半天才实现了Struts2+jQuery的ajax功能。下面给出具体代码以及在用时需要注意的问题。

<script type="text/javascript" src="/Struts2Study/js/jquery-1.8.0.js"></script>

 <body>
    <input id="user" type="text" name="number"/>
    <div id="tt">ggggg</div>
    <button οnclick="f()">提交</button>
  </body>
  <script type="text/javascript">
        function f(){
            $.ajax({
                type:"POST",
                url:"/Struts2Study/login",
                data:$("#user").serializeArray()
            }).done(function(data,statusText){
                if(data.result=="1"){
                    $("#tt").html("haha");
                }
                else{
                    $("#tt").html("hhhh");
                }
            }).fail(function(){
                alert("error!");
            })
        }
  </script>

在使用jquery框架时,务必先将需要的js文件成功导入进该html页面中,博主刚开始就是将jquery.js导入到该页面的标签写错了,然后弄了半天以为是javascript代码的问题,搞得焦头烂额的。当然这也是新手菜鸟们可能会常犯的错误,应该引起重视。

要实现jquery的ajax功能,使用下面形式的javascript语句:

$.ajax({

   type:发送请求的方式,POST或是GET,

   url:发送请求的目的地,即请求需要发送给那个对象处理,可以是html、jsp页面,也可以是servlet,

   data:发送的请求里面封装的参数,是json格式的

}).done(function(data,statusText){

   ...       //当成功响应了这次请求的回调函数,在成功响应了这次请求之后,执行该函数的内容

}).fail(function(){

   ...      //响应这次请求失败时的回调函数,在响应失败之后,执行该函数的内容

})

Action如下:

public class Action1 extends ActionSupport{
    private String number;
    private String result;
    public String getNumber() {
        return number;
    }
    public void setNumber(String number) {
        this.number = number;
    }
    public String getResult() {
        return result;
    }
    public void setResult(String result) {
        this.result = result;
    }
    public String execute(){
        if(number.equals("1")){
            result="1";
        return SUCCESS;
        }
        else{
            result="2";
            return SUCCESS;
        }
    }
}

struts.xml中的配置信息如下:

<package name="User" extends="json-default" namespace="">
    <action name="login" class="Controller.Action1"  method="execute">
        <result type="json">
            <param name="location">result</param>
        </result>
    </action>
  </package>

在ajax函数的done里面的function(data,statusText)中,data即是响应回给该页面的数据,data.result则是Action中的result属性。

这一套是jquery中最为基本的ajax技术的实现方式,以这套实现方式为模板,添枝加叶,就能在struts2+jquery框架下实现更多复杂的交互操作。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值