Do you use struts tags to generate html content? If yes, then sooner or later you’ll come across a scenario where you would generate html elements with the same name but would need different id’s for each element. I faced a similar predicament recently. I had no other option but to use scriptlets to generate id’s for the html elements. However, I soon found out using scriptlets within the struts html tags isn’t really straight forward.
Here’s the code I tried in my first attempt:
<%int i=0;%>
//iteration logic here
<html:text property=”example” styleid=”example<%=i%>”>
Well, if you write the code as shown above, the html code generated would be :
<input type=”text” name=”example” id = “example<%=i%>”>
and not
<input type=”text” name=”example” id=”example0″>
To get the expected result, i.e. for the scriptlet to work inside the struts html tag, write as below:
<html:text property=”example” styleid=’<%=”example”+i%>’
That’s it. If any of you ever find out a way to generate different id’s for html elements with the same name using strtus tags exclusively then do let me know
