struts1中的jQuery ajax

本文介绍了一个在Struts1框架下利用jQuery的AJAX实现数据删除的实践案例。由于页面中存在JS冲突,使用了jQuery的noConflict()解决$符号占用问题,并详细说明了AJAX调用Action进行数据删除的处理过程,以及如何在Struts1中返回AJAX状态值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

上个星期做了上传Excel的功能,本来想使用jQuery的uploadify上传,无奈自己学艺不精,老是会报一些乱起八糟的错误,所以到头来还是用的Form提交。但是因为大部分时间都在研究uploadiyfy,所以后来时间紧迫,匆忙之间写完了功能,被批页面太丑,功能不好用,本来一个问题解决,但是又随之而来三个变动,总之就是要求页面删除是真删除。不能等点击保存之后在信息持久化。那就用到ajax了,之前一直心痒痒的想试试jQuery的ajax,这次正好拿来练手

由于系统是很久之前的框架,页面的JS引用包括prototype,$符号被占用了,现在引入jQuery要先解决冲突问题

jQuery.noConflict();这条语句就是申明$符号的冲突,以下的jQuery都使用jQuery的全称就好了。(当然也可以自定义符号代替$符号,此处不再赘述)

注意 此处很关键  jQuery.noConflict()一定要写在JS方法的一开始,这样下面的初始化就不会引发其他的冲突。当然也可以写到window.onload()里面。

废话不说  页面的JS代码

function delall(){
            showHideLayer('loading');
            jQuery.ajax({
                    type:"post",
                    data:"qyxxid=<%=request.getParameter("qyxxId")%>",
                    url:"<%=request.getContextPath()%>/gd/delallPs.do",
                    dataType:"json",
                    success:function(data,status){
                        if(data){
                            clearform();
                            showHideLayer('loading');
                        }else{
                            showHideLayer('loading');
                            alert('未删除完毕,请重试');
                        }
                    }
                });
        
    }



Action代码  


    public ActionForward delallPs(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response,RequestHashNew reh) throws Exception {
        String sqqyxx = request.getParameter("qyxxid");
        String smxxid = request.getParameter("smxxid");
        try {
            Crypt crypt = new Crypt();
            PowerSituation pSituation =new PowerSituation();
            if(null!=sqqyxx&&!sqqyxx.equals("")){
                sqqyxx = crypt.decrypt(sqqyxx);
                pSituation.setQyxxid(Integer.valueOf(sqqyxx));
            }
            if(null!=smxxid&&!smxxid.equals("")){
                pSituation.setSsxxid(Integer.valueOf(smxxid));
            }
            powersituationservice.deletePowerSituation(pSituation);
            response.getWriter().print(true);
        } catch (RuntimeException e) {
            // TODO Auto-generated catch block
            Logger.getLogger(PowersituationAction.class).error("delAllPSAjax", e);
            response.getWriter().print(false);
        }
        return null;
    }
一开始还担心Struts1里面怎么返回ajax的状态值,没想到直接写就可以了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值