<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    qiyadeng

    專注于Java示例及教程
    posts - 84, comments - 152, trackbacks - 0, articles - 34

    Struts Checkbox radio怎么進行動態的選擇

    Posted on 2005-12-14 10:19 qiyadeng 閱讀(1932) 評論(0)  編輯  收藏 所屬分類: J2EE

    使用Struts的朋友,可能經常發現使用頁面的一些標簽的時候覺得不夠得心應手。比如我們要設計一個用戶修改得信息的界面,需要調出一些用戶的信息。不幸的是,當頁面中含有Checkbox或是radio的時候有沒有想過怎么處理?以前我也為這個苦惱,不少論壇上的人也發帖子問這個問題。最近看到了兩篇文章,可以解決這個問題。來自IBM developer:
    http://www-128.ibm.com/developerworks/java/library/j-sr3.html
    http://www-128.ibm.com/developerworks/java/library/j-sr4.html
    multibox.bmpradio.bmp
    先調簡單的說起吧,我們來實現動態的checkbox:
    1、Form的設計:我們這個例子有個String[] mountains,這個變量數組中包含很多的山的名字;還有個數組String[] selectedMountains就是默認選中的一些山,像下面這樣很簡單。

    public class MultiboxForm extends ActionForm {
     
     private String[] selectedMountains = {"Everest","K2","Lhotse","Cho Oyu"};
     private String[] mountains ={"Everest","K2","Kangchenjunga","Lhotse","Makalu","Kangchenjunga South","Lhotse Middle","Kangchenjunga West","Lhotse Shar","Cho Oyu"};

     public String[] getMountains() {
      return mountains;
     }
     public void setMountains(String[] mountains) {
      this.mountains = mountains;
     }
     public String[] getSelectedMountains() {
      return selectedMountains;
     }
     public void setSelectedMountains(String[] selectedMountains) {
      this.selectedMountains = selectedMountains;
     }

    2、Action的設計:這個就更簡單了,一句話,由控制器切換到視圖。

     return mapping.findForward("success");
    3、JSP的設計:

      <html:form action="/multibox" name="multiboxForm" type="qiya.deng.struts.form.MultiboxForm">
       <logic:iterate name="multiboxForm" property="mountains" id="mountain">
        <html:multibox property="selectedMountains">
         <bean:write name="mountain"/>
        </html:multibox>
        <bean:write name="mountain"/><br/>
       </logic:iterate>
       <br/>
       <html:submit/><html:cancel/>
      </html:form>
    這個相對比較復雜,也是比較中要的。<logic:iterate/>是迭代MultiboxForm中的mountians,
    <html:multibox property="selectedMountains">
     <bean:write name="mountain"/>
    </html:multibox>
    這個標簽的作用就是selecteDMountains的值和迭代的mountain值一致的時候就會選中。

    接下來說Radio,其實Form和Action部分都差不多,只是JSP頁面有點不一樣,Radio里面甚至牽涉到了JavaScript。
    1.From的設計:


     private String selectedMountain = "Kangchenjunga West";
     private String[] mountains ={"Everest","K2","Kangchenjunga","Lhotse","Makalu","Kangchenjunga South","Lhotse Middle","Kangchenjunga West","Lhotse Shar","Cho Oyu"};
     
     public String[] getMountains() {
      return mountains;
     }
     public void setMountains(String[] mountains) {
      this.mountains = mountains;
     }
     public String getSelectedMountain() {
      return selectedMountain;
     }
     public void setSelectedMountain(String selectedMountain) {
      this.selectedMountain = selectedMountain;
     }
    2.Action同上一樣,切換到JSP頁面去。 
    3.重點部分JSP:

      <html:form action="/radio" name="radioForm" type="qiya.deng.struts.form.RadioForm">
       <bean:define id="selectedRadio" property="selectedMountain" name="radioForm"></bean:define>
       <logic:iterate id="mountain" property="mountains" name="radioForm">
        <bean:define id="mountainValue">
         <bean:write name="mountain"/>
        </bean:define>
        <html:radio property="selectedMountain" value="<%=mountainValue%>" styleId="<%=mountainValue%>"/>
        <bean:write name="mountain"/><br/>
       </logic:iterate><br/>
       <html:submit/><html:cancel/>
       <script type="text/javascript">
                 <!--
              var selectedRadio =
                 document.forms["radioForm"].elements["<bean:write name="selectedRadio"/>"];
                  selectedRadio.checked=true;
                 -->
             </script>
      </html:form>


    "<bean:define/>"定義了一個PageContext作用域的屬性selectedRadio,下面的JavaScript的作用就是根據這個屬性找到應該選中的Radio。其他的地方和上面那個很相似的。如果還是不太理解先運行,看看生成的HTML代碼。

    主站蜘蛛池模板: 国产亚洲精彩视频| 亚洲国产成人精品无码一区二区 | 色吊丝永久在线观看最新免费| 亚洲成AV人片在线观看| AAAAA级少妇高潮大片免费看| 亚洲精品无码99在线观看| 黄页网址大全免费观看12网站| 亚洲成年轻人电影网站www| 国产真人无码作爱免费视频| 国色精品卡一卡2卡3卡4卡免费 | 免费人成黄页在线观看日本| 亚洲AV午夜成人影院老师机影院| 伊人久久五月丁香综合中文亚洲| 最近中文字幕大全免费版在线| 午夜a级成人免费毛片| 妇女自拍偷自拍亚洲精品| 中文字幕免费在线看线人| 久久91亚洲人成电影网站| 久久精品成人免费观看| 亚洲一卡二卡三卡| 99久久国产免费-99久久国产免费 99久久国产免费中文无字幕 | 亚洲日韩区在线电影| 无码的免费不卡毛片视频| 午夜男人一级毛片免费| 亚洲福利电影在线观看| CAOPORM国产精品视频免费| 亚洲国产成人一区二区精品区| 91麻豆国产免费观看| 亚洲国产精品无码专区影院| 精品一区二区三区无码免费视频| 亚洲一区免费视频| 国产精品色午夜视频免费看| 国产三级在线免费| 亚洲欧洲另类春色校园网站| 国产成人精品男人免费| 97超高清在线观看免费视频| 久久精品亚洲AV久久久无码| 亚洲日本韩国在线| av无码国产在线看免费网站| 亚洲沟沟美女亚洲沟沟| 免费人成无码大片在线观看|