我想在下拉菜单中选择条件。
<s:set var="defaultState" value="customerBean.state"/>
<select onchange="reflect(this);" name="customerBean.state" class="form-control" id="state">
<option>Select</option>
<s:iterator value="stateList" var="statevalue">
<s:if test="%{#defaultState.equalsIgnoreCase(stateValue)}">
<option id="stateVal" selected="selected"><s:property value="statevalue"/></option>
</s:if>
<s:else>
<option id="stateVal"><s:property value="statevalue"/></option>
</s:else>
</s:iterator>
</select>
这不起作用。但是如果我放
<s:if test="%{#defaultState.equalsIgnoreCase('Alabama')}">
这有效。
请帮助。
答案 0 :(得分:0)
您是否检查过它不是简单的错字?在您的代码中,您正在使用stateValue
和statevalue
。
在stateList
旁边是一个简单列表还是它是bean列表?对于第二个选项,您必须使用类似stateValue.value
的东西。
另一个选择:因为它是OGNL表达式,所以您也可以尝试#statevalue
。但是我不确定何时使用#
,何时不使用。
另一个选项:使用struts标记s:select,并使用value
属性来预先选择该选项。