<html:select property="enable">
<html:option value="1" key="accountForm.Activate" />
<html:option value="0" key="accountForm.Inactivate"/>
</html:select>为什么当enable会值为0时, option的值没有选中为inactivate,而总是选择第一项
<html:option value="1" key="accountForm.Activate" />
<html:option value="0" key="accountForm.Inactivate"/>
</html:select>为什么当enable会值为0时, option的值没有选中为inactivate,而总是选择第一项
除非你初始化设定了inactivate 为选中。
如果需要选中inactivate,对调两个选项
当enable值为1时,应该自动选择active现在不管是什么值,都只选择第一项,why
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. 这样就可以在页面中显示下拉框了
......................................................
<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" 对应值
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;
}</script>