2010-12-03 4 views
3

Я новичок в JSTL, и я хочу обобщить некоторые функции, которые используются несколько раз в одном теге в отдельный тег. Моя идея - передать этому тегу массив строк. Это не проблема. Но я также хочу назвать некоторые переменные на основе этих строк, чтобы я мог повторно использовать результаты выражений в локальной области.Могут ли имена JSTL var быть заданы из выражений или они должны быть буквальными строками?

Пример:

<c:set var="hasFirstName" value="false"/> 

Я хочу, чтобы проверить на "hasFirstName" в различных местах в теге. Но имена будут меняться в зависимости от ввода. Так есть ли способ сделать что-то подобное?

<c:forTokens var="formName" items="firstName,middleName,lastName" delims=","> 
     <c:set var="has_${formName}" value="false"/> 
</c:forTokens> 
+0

Вы всегда можете попробовать и выяснить ... – skaffman 2010-12-03 15:35:08

ответ

2

Ваш подход будет работать, она будет сохранена только как has_firstName, а не как hasFirstName.

Вы можете подстроки и в верхнем регистре 1-го символа с JSTL functions, но это неуклюжие.

Смежные вопросы