日期:2014-05-20  浏览次数:20747 次

关于<html:select>标签的问题,100分
<html:select   property= "enable ">
<html:option   value= "1 "   key= "accountForm.Activate "   />
<html:option   value= "0 "   key= "accountForm.Inactivate "/>
</html:select>

为什么当enable会值为0时,   option的值没有选中为inactivate,而总是选择第一项


------解决方案--------------------
默认选中是只会选中第一个索引的选项。
除非你初始化设定了inactivate 为选中。
如果需要选中inactivate,对调两个选项
------解决方案--------------------
最近使用 <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. 这样就可以在页面中显示下拉框了
------解决方案--------------------
同意楼上的。
------解决方案--------------------
你在YourActionForm里面的setEnable(String value)这个方法里面把这个值设成0,应该就没有问题了。
------解决方案--------------------
html的select不是这么用的,具体怎么用,参考楼上的楼上的楼上
------解决方案--------------------
好想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>
------解决方案--------------------
<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不一样



------解决方案--------------------
找到一个解决办法,但是有点麻烦。
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;