Sun
          是選擇你愛(ài)的人還是愛(ài)你的人?
          posts - 8,comments - 14,trackbacks - 0

          今天有人問(wèn)前臺(tái)表單form動(dòng)態(tài)生成,后臺(tái)使用DynaActionForm怎么用,說(shuō)了他沒(méi)懂,就寫(xiě)了個(gè)例子。

          Action配置

          <action
                attribute
          ="testMappingForm"
                input
          ="/jsp"
                name
          ="testMappingForm"
                path
          ="/testMapping"
                scope
          ="request"
                type
          ="com.modo.struts.action.TestMappingAction" />


          ActionForm配置

          <form-bean name="testMappingForm" type="org.apache.struts.action.DynaActionForm">
                  
          <form-property name="fnames" type="java.util.HashMap"></form-property>
              
          </form-bean>

          請(qǐng)注意name屬性,這個(gè)屬性后面要用到。


          然后是頁(yè)面index.jsp,這里只模擬動(dòng)態(tài)

          <html:form action="/testMapping.do" method="post">
             
          <%
             
          for(int i=0;i<5;i++){   
             
          %>
                     
          <html:text property="<%="fnames(name_"+i+")"%>" value="<%="gangye_"+i%>"></html:text><br>
             
          <%}%>
             
          <br>
             
          <html:submit value="Submit Form" />
             
          </html:form>

          請(qǐng)注意html:text的property標(biāo)簽。


          index.jsp效果如下

          后臺(tái)Action

          public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request,
                      HttpServletResponse response) {
                  HashMap   hm
          =(HashMap)((DynaActionForm)form).get("fnames");
                  Iterator it 
          = hm.entrySet().iterator();
                  Map.Entry entry 
          = null;
                  
          while(it.hasNext()){
                      entry  
          = (Map.Entry)it.next();
                      System.out.println(entry.getKey() 
          + " = " + entry.getValue());
                  }
                  
          return null;
              }


          輸出表單項(xiàng)

          name_4 = gangye_4
          name_0 
          = gangye_0
          name_2 
          = gangye_2
          name_1 
          = gangye_1
          name_3 
          = gangye_3



           



           

          posted on 2010-04-20 15:56 .Sun 閱讀(2337) 評(píng)論(5)  編輯  收藏 所屬分類: 隨筆

          FeedBack:
          # re: 關(guān)于struts動(dòng)態(tài)form_DynaActionForm
          2010-05-18 09:18 | iceblooded
          java.lang.ClassCastException: com.modo.struts.action.TestMappingAction  回復(fù)  更多評(píng)論
            
          # re: 關(guān)于struts動(dòng)態(tài)form_DynaActionForm
          2011-02-24 20:29 | 蔣承洋
          謝謝你,我學(xué)到知識(shí)了...  回復(fù)  更多評(píng)論
            
          # re: 關(guān)于struts動(dòng)態(tài)form_DynaActionForm
          2011-05-04 16:30 | 盧煜
          證實(shí)有效!  回復(fù)  更多評(píng)論
            
          # re: 關(guān)于struts動(dòng)態(tài)form_DynaActionForm
          2011-05-04 16:33 | 盧煜
          牛人,我在這個(gè)問(wèn)題上糾結(jié)了一天,試過(guò)很多方法,最終問(wèn)題在你這得到解決。
          小弟感激不禁!  回復(fù)  更多評(píng)論
            
          # re: 關(guān)于struts動(dòng)態(tài)form_DynaActionForm[未登錄](méi)
          2014-04-23 04:00 | lj
          請(qǐng)教下牛人:
          <form-property name="fnames" type="java.util.ArrayList"></form-property>

          在JSP輸入頁(yè)面如何取得這個(gè)fnames,  回復(fù)  更多評(píng)論
            
          主站蜘蛛池模板: 台东县| 古丈县| 瓦房店市| 忻州市| 台湾省| 顺义区| 乐至县| 新晃| 定南县| 蓝田县| 元谋县| 旬阳县| 白银市| 平定县| 河津市| 喀什市| 卓资县| 乌恰县| 大荔县| 长沙市| 宜州市| 吴江市| 阿拉善盟| 玛多县| 华宁县| 舟山市| 错那县| 平和县| 石阡县| 四平市| 通城县| 逊克县| 德庆县| 凤阳县| 凌云县| 子长县| 湾仔区| 黔西| 宜阳县| 利川市| 新密市|