有一个下拉列表,其中我有一组帐号和一个“其他”选项。用户可以选择任何帐户,也可以使用“其他”选项输入新帐户。我有这样的代码:
<td>1. Member Account Number<span class="bodyCopy"><font color="#ff0000"> * </font></span>:
<html:select name="DataForm" property="accountNumber" styleClass="formContent" style="width:80px" onchange="toggleField(this.value);">
<html:options collection="<%= WorkConstants.TEST1 %>" property="value" labelProperty="label" styleClass="formContent"/>
<option value="Other">Other </option>
</html:select>
<input type="text" id="Other" value="accountNumber" name="accountNumber" style="display:none;" maxlength="9" size="9" >
</td>
--- Togglefield功能如下
<script type="text/javascript">
function toggleField(value)
{var a = document.getElementById('Other');
(value == 'Other')? a.style.display = 'block' : a.style.display = 'none';}
我的问题是, 1)当我选择其他时,文本框显示 - 良好。但是如何将值分配给accountNumber?当我点击提交时,它无法识别出无效的帐号。 2)当页面刷新验证错误时,如何保留值“other”和带有输入数字的文本框?感谢您对此的意见。
答案 0 :(得分:0)
您正在混合html字段和struts字段。我认为您需要使用输入字段:
<html:text property="accountNumber" />