在Struts 2中动态生成名称和值属性

时间:2014-10-27 04:02:26

标签: jsp struts2 jstl struts ognl

我正在将代码从Struts1迁移到Struts2

Struts1代码

<input type="text" value="<c:out value="${serviceVO.notifList}"/>" name="ServicesNotifList-<c:out value="${serviceVO.globalId}"/>#<c:out value="${serviceVO.id}"/>" size="50" maxlength="1000"/>
Struts2中的

我试过但没有工作

<c:set var="notifListTemp" value="ServicesNotifList-"></c:set>
<c:set var="notifListTemp1" >${notifListTemp}${serviceVO.globalId}</c:set>
<c:set var="notifListTemp2" value="#"></c:set>
<c:set var="notifListTemp3" >${notifListTemp1}${notifListTemp2}${serviceVO.id}</c:set>

<s:textfield theme="simple" value="${serviceVO.notifList}" name="${notifListTemp3}" 
 size="50" maxlength="1000"  />

其中serviceVOdisplay:table id。

1 个答案:

答案 0 :(得分:1)

您不能在Struts标记的属性中使用JSP EL表达式,但很高兴您可以使用OGNL表达式。通过#attr访问不在值堆栈中的对象。

<s:textfield theme="simple" value="%{#attr.serviceVO.notifList}" name="%{#attr.notifListTemp3}" 
     size="50" maxlength="1000"  />