Динамически имя структурированного текстового поля - PullRequest
0 голосов
/ 02 декабря 2011

Я пытаюсь написать JSP, который содержит тег текстового поля struts 2 следующим образом:

Я хотел бы динамически назначить имя этому текстовому полю, используя значение переменной, которую я объявил ранее в коде, следующим образом:

<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>  

Я хотел бы дать текстовому полю имя, которое равно текущему значению переменной i. Пожалуйста, совет.

1 Ответ

0 голосов
/ 02 декабря 2011

Я не уверен, что вы подразумеваете под текущим значением переменной

, но если вы сделаете как

<s:textfield label="What is your name?" name="%{var_val}" />

, текстовое поле будет названо текущим значением переменной.поверьте, когда итератор будет выполнять итерацию, он поместит объект на вершину стека значений, и вы можете ссылаться на него, используя выражение OGNL

id has been Deprecated. Use `var` instead

Существуют различные свойства объекта IteratorStatus, поэтому используйте их на местеof 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 Status Iterator

...