<html:select property="enable">
<html:option value="1" key="accountForm.Activate" />
<html:option value="0" key="accountForm.Inactivate"/>
</html:select>为什么当enable会值为0时, option的值没有选中为inactivate,而总是选择第一项

解决方案 »

  1.   

    默认选中是只会选中第一个索引的选项。
    除非你初始化设定了inactivate 为选中。
    如果需要选中inactivate,对调两个选项
      

  2.   

    当enable值为0时,应该自动选择inactive
    当enable值为1时,应该自动选择active现在不管是什么值,都只选择第一项,why
      

  3.   

    最近使用<html:select>标签,下面是我的一点体会:
    1. <html:select> 标签一点要嵌套在 <html:form> 标签中使用
    2. 必须设置<html:select>的property属性,并且属性的名字要和 YourActionForm 中数据成员名相同,且提供getXXX() 和 setXXX() 方法. 提交表单后 property 属性中存放的就是用户的选择项
    3. 下拉框用的是键/值对的模式,因此建议把数据存放在 LabelValueBean 对象中,并把这些对象存放在List中,也方便后续运用;
    4. 在<html:select>标签中运用<html:options>来显示数据
       <html:option collection="存放对象的List"
                              property="value" 对应值
                  LabelProperty="label" 对应键/>
    5. 这样就可以在页面中显示下拉框了
      

  4.   

    你在YourActionForm里面的setEnable(String value)这个方法里面把这个值设成0,应该就没有问题了。
      

  5.   

    html的select不是这么用的,具体怎么用,参考楼上的楼上的楼上
      

  6.   

    好想lz把属性记错了... 
    ......................................................
    <html:option collection="存放对象的List"
                              property="value" 对应值
                  LabelProperty="label" 对应键/>
    .....................................................
    我比较喜欢用下面这个~~`
    <html:select name="systemTsYellowpageTypeForm" property="parentId" >
     <html:optionsCollection name="list" label="要显示的值 (list中的一个字段)" value="对应值(list中的一个字段)"/>
    </html:select>
      

  7.   

    <html:option collection="存放对象的List"
                              property="value" 对应值
                  LabelProperty="label" 对应键/><html:select name="systemTsYellowpageTypeForm" property="parentId" >
     <html:optionsCollection name="list" label="要显示的值 (list中的一个字段)" value="对应值(list中的一个字段)"/>
    </html:select>property="value"   ---------->value="对应值(list中的一个字段)"/  -->value="value"
     LabelProperty="label"--->label="要显示的值 (list中的一个字段)" --->label="label"
    原理一样,只是这个集合里的Bean不一样
      

  8.   

    找到一个解决办法,但是有点麻烦。
    1.定义一个隐藏变量enablehid,它的值也是从DB中取出的值。
    <html:hidden property="enablehid">
    <html:select property="enable">
    <html:option value="1" key="accountForm.Activate" />
    <html:option value="0" key="accountForm.Inactivate"/>
    </html:select>2.
    <body onLoad= "selInit()" >3.
    <script language=javascript>
    function selInit(){
    document.getElementById(enable).value=document.getElementById(enablehid).value;
    }</script>