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

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

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

    隨筆-26  評論-13  文章-46  trackbacks-0

    問題原型:
    ???? 添加頁面中有10個checkbox,用戶選中了5個后提交
    ?????修改頁面中應顯示10個checkbox,同時應該有5個已經被選中
    ?
    詳細實際問題:
    ????為了滿足業務需要,從linux安裝盤中的comps.xml中讀取提供的服務所依賴的包
    ??? 顯示在頁面上,根據包的類型(default,mandatory,optional)決定顯示的方法
    ??? default默認選中,mandatory不提供選擇,optional為用戶可選
    ??

    < c:choose >
    ??
    < c:when? test ="${p.type?==?'mandatory'}" >
    ????
    < td >
    ?????
    < input? type ="checkbox" ?name ="nodeRPMS"
    ????style
    ="VISIBILITY:?hidden;?"
    ????checked
    ="true"
    ????value
    ="<c:out?value=" ${p.rpmName}" /> "/>
    ????
    </ td >
    ??
    </ c:when >

    ???
    < c:when? test ="${p.type?==?'default'}" >
    ????
    < td >
    ??????
    < input? type ="checkbox"
    ???????name
    ="nodeRPMS" ??checked =true??
    ???????
    value ="<c:out??value=" ${p.rpmName}" /> "/>
    ????
    </ td >
    ???
    </ c:when >

    ??
    < c:when? test ="${p.type?==?'optional'}" >
    ????
    < td > ?
    ?????
    < input? type ="checkbox" ?name ="nodeRPMS"
    ???????value
    ="<c:out?value=" ${p.rpmName}" /> "/>
    ????
    </ td >
    ??
    </ c:when >
    </ c:choose >

    在處理層,采用struts的form來接受,定義string [] nodeRPMs接受即可
    接受后存在數據庫里,然后讀出來在顯示在頁面上

    在修改頁面,首先應該有全部的checkbox,同時用戶選中的應該已經被打勾(這來自數據庫讀出的記錄),經過中午的查找資料
    才知道可以使用mutilbox解決這個問題

    < c:choose >
    ??
    < c:when?test = " ${p.type?==?'mandatory'} " >
    ????
    < td >
    ??????
    < input?type = " checkbox " ?name = " nodeRPMS "
    ????style
    = " VISIBILITY:?hidden;? "
    ????
    checked = " true "
    ????value
    = " <c:out?value= " $ {p.rpmName} " /> " />
    ???
    </ td >
    ??
    </ c:when >

    ??
    < c:otherwise >
    ???
    < td >
    ??????
    < html:multibox?property = " nodeRPMS " >
    ??????
    < c: out ?value = " ${p.rpmName} " />
    ??????
    </ html:multibox > ????
    ???
    </ td >
    ??
    </ c:otherwise >
    </ c:choose >


    mutilbox會根據你讀出的值來設定
    ?struts中的checkbox是單選的,它的值應該只有true和false或者yes no或者on off之分;
    r如果希望使用一組可以多選的checkbox,在struts中的頁面標簽應該是html:multibox,它的用法:<html:multibox property="strArray" value="value1">或者
    ?????? <html:multibox property="strArray">value2</html:multibox>

    真正載頁面上使用時可能是這樣:
    <html:multibox property="strArray">a</html:multibox>
    <html:multibox property="strArray">b</html:multibox>
    <html:multibox property="strArray">c</html:multibox>

    當然"strArray"一定是頁面相對應的formbean中的一個屬性,并且應該是數組:
    private String[] strArray; //提供get set方法

    這樣,如果我們在頁面上面選中了前兩個,則strArray.length=2;strArray[0]里面的值是a,strArray[1]里面的值是b;
    如果我們把form中的strArray設置為strArray[0]="b",strArray[1]="c",則轉到頁面之后,頁面上只有后兩項被選中
    所以這樣就可以解決問題了

    posted on 2006-04-05 16:18 似水流年 閱讀(5151) 評論(1)  編輯  收藏 所屬分類: Struts

    評論:
    # re: struts html:multibox標簽(轉載) 2011-06-23 16:12 | 何楊
    Good!  回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 中文字幕无码免费久久| 日韩人妻一区二区三区免费| 欧亚一级毛片免费看| 国产精品偷伦视频免费观看了| 久久午夜羞羞影院免费观看 | 羞羞视频免费网站日本| 久别的草原电视剧免费观看| 国产精品亚洲片在线| 欧洲人成在线免费| 亚洲视屏在线观看| 一出一进一爽一粗一大视频免费的 | 国产在线国偷精品免费看| 亚洲中文字幕无码爆乳av中文| 人妻仑刮八A级毛片免费看| 亚洲AV无码一区二区三区国产| 久久精品亚洲一区二区三区浴池| 无码天堂va亚洲va在线va| 国产成人免费网站在线观看| 美女视频黄频a免费大全视频| 亚洲国产午夜福利在线播放| 9久热这里只有精品免费| 亚洲av无码国产精品色午夜字幕 | 国产成人高清精品免费软件| 妇女自拍偷自拍亚洲精品| 久久亚洲高清综合| 欧美日韩亚洲精品| 亚洲愉拍99热成人精品热久久| 久久99热精品免费观看牛牛| 国产精品亚洲片在线va| 亚洲国产av无码精品| 久久国产乱子免费精品| 激情综合亚洲色婷婷五月| 免费一级国产生活片| 午夜视频在线免费观看| 亚洲精品中文字幕| 大地资源免费更新在线播放| 黄色毛片免费网站| 亚洲av日韩av无码| 日韩特黄特色大片免费视频| 亚洲偷自精品三十六区| 亚洲AV无码不卡在线观看下载|