快速业务通道

Struts的动态复选框-用动态选择的元素轻松创建复选框 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-15
ectedMountains 的 String[] 数组,并使它可以用于页面:

清单 3. 表单的 Action

import org.apache.struts.action.Action; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; /** * A simple Action for Checkbox test. * * @author Danilo Gurovich */ public final class CheckboxTestAction extends Action { // -------------------------- OTHER METHODS -------------------------- /** * The execute method * * @param mapping ActionMapping * @param form CheckboxTestForm * @param request HttpServletRequest * @param response HttpServletRespons * @return success to the confirmation page * @throws ServletException not thrown, but could be! * @throws Exception ditto. */ public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws ServletException, Exception { // Extract attributes needed String[] selectedMountains = ((CheckboxTestForm) form).getSelectedMountains() ; System.out.println("htmlString RETURNED*\n" + selectedMountains.toString()); //Save the htmlString in the session for later... HttpSession session = request.getSession(); session.setAttribute(CheckboxConstants.MOUNTAINS, selectedMountains); return (mapping.findForward("success")); } }

Struts的动态复选框-用动态选择的元素轻松创建复选框(5)

时间:2011-08-18 IBM Danilo Gurovich

扩充 Himalayas

有了这个代码,工作就完成了,差不多可以展示成果了!用户现在可以提交 JSP 表单并在 Action 类 引用的对应页面中查看结果。清单 4 中的代码段显示了用户在简单 JSP 页面的表单中选中的复选框列表 :

清单 4. 复选框选择的结果

<%@taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html"%> <%@taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean"%> <%@taglib uri="http://jakarta.apache.org/struts/tags-logic" prefix="logic"%> <%-- html code, etc... --> <logic:iterate id="mountain" property="mountains" name="testForm"> <bean:write name="mountain"/><br/> </logic:iterate> <hr size=5 color="black"/> <%-- some more html code, etc... -->

这个诀窍的工作方式

这个诀窍的关键是表单 bean 中的字段被传递到页面。查看相关 JSP 代码有助于澄清这点。一旦表单 bean 被实例化:

<html:form action="/FormAction" name="testForm" type=" com.strutsrecipes.CheckboxTestForm">

下一步为 Java 类的 mountains 变量中的每个 mountain 创建一个复选框。要做到这一点,我必须像 下面这样在 String[] 数组中迭代:

<logic:iterate id="mountain"  property="mountains"  
name="testForm">

使用 <logic:iterate> 标记,我调用了 testForm bean 中的 getMountains() 方法。它在

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号