我正在尝试编写一个包含struts 2 textfield标记的JSP,如下所示:
我想使用我之前在代码中声明的变量值为这个文本字段动态分配一个名称,如下所示:
<s:if test="patient.procedureCode.size > 0">
<% int i=0;%>
<s:iterator value="patient.procedureCode" id ="procedureCode">
<%i++; %>
<% if((i%2) > 0) { %>
<tr class="dbText" >
<td >
<s:checkbox value="false" fieldValue="%{#procedureCode.objectid}" name="objectid" theme="simple" />
</td>
<td class="BasicText" >
<s:textfield value="%{proceddateVar}" size="10" theme="simple" readonly="false" name=""/>
</td>
</tr>
<%} %>
</s:iterator>
我想给textfield一个等于变量i的当前值的名称。 请指教。
答案 0 :(得分:0)
我不确定你的变量当前值是什么意思
但如果你愿意的话
<s:textfield label="What is your name?" name="%{var_val}" />
这会将文本字段命名为变量的当前值 所以我相信当迭代器迭代时它将把对象放在值栈的顶部,你可以使用OGNL表达式引用它
id has been Deprecated. Use `var` instead
IteratorStatus
对象有不同的属性,因此请使用它们代替scriplet
index int zero-based index value.
count int index + 1
first boolean returns true if it is the first element
last boolean returns true if it is the last element
even boolean returns true if the count is an even number.
odd boolean returns true if the count is an odd number.
modulus int takes an int value and returns the modulus of count
我个人永远不会喜欢在干净的方式实现事情时混合scriplet
以下是Iterator对象的详细信息 Iterator Status