数据列表删除效果(涉及Ajax和strut2框架)

1.jsp页面删除按钮的单击事件

Jsp:

$('#delbtn_wait').click(function(){
            var data=getValue();
            if(data==""){
                alert("请选择需要删除的选项");
                return;
            }
            $("#checkList").val(data);
            if(confirm("确定删除该立项信息吗?删除后不可回复")){
                $.ajax({
                    async:false,
                    type: "POST",
                    data:$("form").serialize(),
                    url: '/bistone/showdelProjectApprove.action?data='+data
                });
                alert("删除样本库成功!");
                refreshwindow();
            }           
        //关闭子窗口,删除后自动刷新页面
        function refreshwindow() {
            window.location.href = window.location.href.replace(/#/g, '');
        }               
        });

2.配置Action的的映射文件

Strul.xml:

<action name="showdelProjectApprove" class="projectApproveAction" method="showdelProjectApprove">
            <result name="success">/jsp/ptl/listApproveDraft.action?sDto.approveUserId=${approveUserId}&amp;sDto.approveDeptId=${approveDeptId}</result>
        </action>

3.Action文件相当于Servlet层

ProjectApproveaction.java:

public String showdelProjectApprove(){
        HttpServletRequest request = ServletActionContext.getRequest();
        SearchConditionDto sdto = (SearchConditionDto)MemcacheUtil.getMemcached("sdto",request);
        this.ids = checkList.split(",");//要删除样本的所有的id
        if (ids != null && ids.length > 0) {
            boolean flag = false;
            for (int i = 0; i < ids.length; i++) {
                projectApprove = new ProjectApproveDto();
                projectApprove.setApproveId(ids[i]);
                //执行删除
                String opName = projectApproveService.listProjectApproveDraft(uid).get(0).getProjectName();
                flag = this.projectApproveService.showdelProjectApprove(projectApprove);
/**当projectApproveService里面还没有创建showdelProjectApprove方法时,鼠标放上去会提示在Service文件中创建showdelProjectApprove方法(ctrl+1也行),点击该选项会自动跳转到Service界面,找到Service层的实行按类鼠标放在类名处,实现接口未实现的方法即可。不用手动敲。*/
            }
            if (flag) {
                return SUCCESS;
            } else {
                addActionError("删除失败!");
                return INPUT;
            }
        }
        addActionError("删除失败!");
        return INPUT;
    }

4.service的接口类

public boolean showdelProjectApprove(ProjectApproveDto dto);

4.1service接口的实现类

@Override
    public boolean showdelProjectApprove(ProjectApproveDto dto) {
        // 调用Dao里面的showdelProjectApprove方法
        return this.projectApproveDao.showdelProjectApprove(dto);
    }

5.Dao的接口类

public boolean showdelProjectApprove(ProjectApproveDto dto);

5.1Dao接口的实现类

@Override
    public boolean showdelProjectApprove(ProjectApproveDto dto) {
        // TODO Auto-generated method stub
        boolean flag = false;   
        try {
            flag = getSqlMapClientTemplate().delete("showdelProjectApprove", dto) > 0 ? true : false;
            
        } catch (DataAccessException e) {
            // TODO Auto-generated catch block
            logger.error("删除立项数据错误showdelProjectApprove:"+e.getMessage());
        }
        return flag;
    }

6.找到showdelProjectApprove的sql映射文件

sqlmap.xml

<delete id="showdelProjectApprove" parameterClass="projectApproveDto">
        delete from tb_d_project_approve where approve_id = #approveId#
    </delete>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,803评论 18 399
  • 一. Java基础部分.................................................
    wy_sure阅读 3,853评论 0 11
  • spring mvc 工作机制(原理): DispatcherServlet主要用作职责调度工作,本身主要用于控制...
    java大湿兄阅读 1,926评论 5 24
  • (一)Struts、Spring、Hibernate、Mybatis框技术 1.Struts2.0有几种标签库 【...
    独云阅读 3,300评论 0 62
  • 2010年的夏天,在那座沿海城市,李曼成了郝秋的新娘。 郝秋是当地市立医院的主治医生,年轻有为,多次在手术台上把将...
    凉月白水阅读 247评论 0 2