2014-12-29 3 views
1

Все,Динамического значение идентификатора для Struts 2 вида

Я хочу использовать динамическое значение для атрибута ид в распорках 2 формы и другие теги, а также. Ниже приведен тот же код:

<s:if test="null != #request.METHOD_CALL || #request.METHOD_CALL == 'ADD' "> 
    <s:set name="pre" value="%{'a_'}" /> 
</s:if> 
<s:else> 
    <s:set name="pre" value="%{'e_'}" /> 
</s:else> 

<s:form action="saveMeetingAction" id="**<s:property value='pre'/>**_editForm"> 
<s:textfield name = "recDt" id = "**<s:property value="pre"/>**rcrdDt" size='11' maxlength='11' /> 

Я хотел бы видеть мою форму, как показано ниже:

<s:form action="saveMeetingAction" id="e_editForm"> 
<s:textfield name = "recDt" id = "e_rcrdDt" size='11' maxlength='11' /> 

<s:form action="saveMeetingAction" id="a_editForm"> 
<s:textfield name = "recDt" id = "a_rcrdDt" size='11' maxlength='11' /> 

Пожалуйста, предложите, как создать идентификатор атрибута в сек: форма. Это отлично работает с простой формой html.

+0

Вы не можете вставлять такие теги, в тегах S2 используйте OGNL. –

ответ

1

Попробуйте

<s:if test="null != #request.METHOD_CALL || #request.METHOD_CALL == 'ADD' "> 
    <s:set var="pre" value="%{'a'}" /> 
</s:if> 
<s:else> 
    <s:set var="pre" value="%{'e'}" /> 
</s:else> 

<s:form action="saveMeetingAction" id="%{#pre}_editForm"> 
<s:textfield name = "recDt" id = "%{#pre}_rcrdDt" size='11' maxlength='11' /> 

Если вы используете Struts тег, вы можете сделать выражение OGNL внутри атрибутов. Чтобы определить переменную с тегом set, вы должны использовать атрибут var.

+0

Спасибо, Роман C это сработало. – rajesh

+0

Вы должны принять ответ. –