`
zengbo0710
  • 浏览: 416977 次
社区版块
存档分类
最新评论

在struts中使用checkbox实现批量删除

阅读更多
JSP
 <html:form StyleId = "delForm" action="/category.do?method=deleteColletion">
      <logic:iterate id="category" name="categories" >
         <tr>
            <td<input type="checkbox" name="ids" value="<bean:write name="category" property="id" />">td>
            <td>.....</td>
         </tr>
      </logic:iterate>
    <input type = "checkbox" name="isSelected" value = "true"
                          onclick = "if(delForm.isSelected.checked == true)
                                      {for (var i = 0; i < delForm.ids.length; i ++){delForm.ids[i].checked = true;}}
                                     else{for (var i = 0; i < delForm.ids.length; i ++){delForm.ids[i].checked = false;}}"/>
                                             全选&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <a href="javascript:if(confirm('真的要删除选中栏目?'))delForm.submit()">删除所有选中栏目</a>
 </html:form>

FormBean( 我使用的是DynaActionForm,所以在struts-config.xml中配置)
  <form-bean name="testingForm"  type="org.apache.struts.action.DynaActionForm">
    <form-property name="id"     type="java.lang.String"/>
    <form-property name="ids"    type="java.lang.Long[]"/>
     ........
  </form-bean>
 
Action
    public ActionForward execute(ActionMapping mapping, ActionForm form,
        HttpServletRequest request, HttpServletResponse response)
        throws Exception {
        // 获取操作名
        DynaActionForm dyna = (DynaActionForm) form;
        // ids数组是所有被选中记录的id值
        Long[] ids = (Long[]) dyna.get("ids");
       // 调用相应dao方法,完成删除所有指定id操作
       return mapping.findForward(".....");
    }
 
说明
       关键就在于FormBean的设置,也就是那个数组ids,一般的实现方法会在客户端首先遍历一遍所有被选中的checkbox,然后使用js拼装字符串,传给action,在后台解析该字符串得到所有被选中的指定的id,这个方法没有什么不妥,不过使用struts会更简单些,而这里使用一个FormBean的数组属性来对应页面中的checkbox DHTML数组对象,struts替我们完成了遍历所有checkbox,并找出所有被选中checkbox的value,是不是更简单呢?还有一个需要搞明白的就是html:iterate所用的Bean和执行批量删除操作的FormBean是两码事,我开始就差点搞混淆了。 


分享到:
评论

相关推荐

    Android ListView+checkbox 实现批量删除

    通过以上步骤,我们成功实现了在Android中使用ListView和CheckBox实现批量删除的功能。这个过程中,关键点在于自定义Adapter、监听ListView的点击事件以及处理选中状态的逻辑。理解这些概念对于Android应用开发是...

    Android 长按Listview显示CheckBox,实现批量删除

    Android 长按Listview显示CheckBox,实现批量删除,具体功能请参考: http://blog.csdn.net/ddxxll2008/article/details/49125759

    通过在GridView中CheckBox多选的批量删除,经典

    以上就是通过在GridView中使用CheckBox实现多选批量删除的基本步骤和关键知识点。实际应用中可能还需要考虑其他因素,如错误处理、优化性能、防止跨站请求伪造(CSRF)等,但这些是构建这种功能的基础。

    struts的htmlcheckbox标签的默认选中问题

    在Struts中,html标签库提供了丰富的HTML表单元素,包括htmlcheckbox标签,用于创建复选框。 ### Struts的htmlcheckbox标签 htmlcheckbox标签是Struts标签库中的一个成员,用于生成HTML表单中的复选框元素。它的...

    listview+checkbox实现简单批量删除

    在实际应用中,我们经常需要实现用户可以勾选ListView中的项并进行批量删除的功能。本文将详细讲解如何结合ListView和Checkbox来实现这一功能。 首先,我们需要在ListView的每个条目布局中添加一个Checkbox。在XML...

    struts2 的批量删除功能完整例子

    下面我们将深入探讨如何在Struts2框架下实现批量删除功能,并结合提供的文件名进行分析。 首先,我们来看`AddLog.java`。这个文件很可能是业务逻辑层(Business Logic Layer)的一个类,负责处理与日志添加相关的...

    (原创)struts标签之checkboxlist选中值并换行处理

    接下来,在JSP页面中使用`&lt;s:checkboxlist&gt;` 标签来显示这些选项。关键属性如下: - **name**: 定义表单字段的名称。 - **theme**: 设置样式主题,`simple`表示简单风格。 - **list**: 数据源,即包含所有选项的...

    struts2对于checkboxlist的换行

    这篇博客讨论的是如何在Struts2中处理`checkboxlist`的换行问题,这在创建多列或美观的表单布局时非常有用。 `checkboxlist`在Struts2中通常与一个Action类中的属性关联,用于收集用户的多选数据。在HTML中,复选框...

    listview+checkBox全选,批量删除

    在IT行业中,尤其是在Android开发或者Web开发中,"ListView+CheckBox全选,批量删除"是一个常见的功能需求。这个功能主要用于用户界面,允许用户通过选择多个项目(通常在ListView控件中显示)并执行批量操作,如...

    checkbox全选反选与批量删除附源码

    在本例中,我们将探讨如何利用HTML的`checkbox`元素,JavaScript来实现全选/反选功能,并通过Servlet来处理数据库中的批量删除操作。 **一、Checkbox全选与反选** 1. **Checkbox基本概念**:Checkbox是HTML中的一...

    在DataGrid中使用CheckBox,实现全选功能

    这篇博客“在DataGrid中使用CheckBox,实现全选功能”详细介绍了如何实现这一需求。 首先,我们需要在DataGrid的列定义中添加一个CheckBox列。在WPF中,可以使用DataGridTemplateColumn来自定义列模板,将CheckBox...

    WPF中DataGrid里面的Checkbox实现单选

    WPF中DataGrid里面的Checkbox实现单选关键代码, 文档里面的代码复制粘贴即可实现!本人也是项目需要写的一个功能11行代码实现此功能! 希望可以帮助到你们!

    struts2.0 checkbox标签使用问题

    其中,`checkbox`标签是用于处理复选框的,经常在表单中使用,允许用户进行多选操作。在实际开发中,我们可能会遇到一些关于`checkbox`标签的使用问题,比如值的绑定、多个复选框的处理等。 首先,我们来看`...

    struts2的checkboxlist标签换行

    在Struts2中,`checkboxlist`标签是用于显示一组可选的复选框,通常用于用户在表单中多选选项。本文将深入探讨`checkboxlist`标签以及如何实现换行显示。 在Struts2的标签库中,`&lt;s:checkboxlist&gt;`标签主要用于创建...

    JSP中的批量删除111111111

    以下将详细介绍如何在JSP中实现批量删除的功能,以及相关的知识点。 首先,我们需要一个用户界面来选择待删除的项。这可以通过HTML表格或者复选框实现,每个待删除的项对应一个复选框。例如: ```html ${items...

    checkbox批量选择

    checkbox批量选择,可实现,单选,多选哦

    解决struts2的s:checkbox显示难看问题

    6. **JavaScript和jQuery插件**:如果你的页面中使用了JavaScript库或jQuery插件,它们可能影响到复选框的显示。确保插件与Struts2标签兼容,或者使用Struts2的AJAX支持。 7. **编码问题**:有时候,中文字符在页面...

    CheckBox全选并删除

    在实现删除功能时,必须考虑安全性,如防止SQL注入,以及提供删除确认对话框以防止意外删除。同时,为了提升用户体验,可以使用Ajax技术,使得删除操作无刷新进行,提高系统响应速度。 6. 异常处理: 删除过程中...

    ssm批量删除

    本篇将详细介绍如何在SSM框架中实现批量删除功能。 #### 二、前端页面实现 1. **HTML代码**: - 在HTML页面中,通过`&lt;input type="checkbox"&gt;`元素让用户可以选择多个项。 - 使用`&lt;a&gt;`标签绑定JavaScript函数`...

    巧用struts标签之checkboxlist选中默认值换行处理

    在Struts框架中,`&lt;s:checkboxlist&gt;`是一个非常实用的标签,用于在HTML表单中创建一组复选框,通常用于用户选择多个选项。本文将深入探讨如何巧妙地处理`checkboxlist`的默认选中值以及实现换行显示。 首先,我们...

Global site tag (gtag.js) - Google Analytics