2012-06-01 4 views
0

У меня есть другая, вероятно, основная проблема. счастлив, если ты сможешь помочь.Запрос параметра if struts2 if tag

есть параметр запроса «действие». если я пишу:

<label><s:property value="%{#parameters.action}"/></label> 

появляется значение (это 1)

Так itry, чтобы проверить прямо сейчас:

<s:if test="%{#parameters.action == '1'}">YES 1</s:if><s:else>NOT 1</s:else> 

НЕ 1 появится.

Я пробовал все синтаксисы, которые я нашел в сети для теста. Ничего не меняется, НЕ 1 по-прежнему отображается

Спасибо

+0

у вас установлен эти параметры в вашем классе действий? вы можете показать, что класс Action –

ответ

0

Это потому, что:

  • значение %{#parameters.action} является массивом, а не одно значение, а
  • значение будет тип- преобразуется в ряд (не знаю, почему, нужно смотреть, чтобы что)

правильное выражение должно быть:

<s:if test="%{#parameters.action[0] == 1}">YES 1</s:if><s:else>NOT 1</s:else> 
+0

попробовал это тоже ... он не работает – mlwacosmos

+0

, но я попробую еще раз – mlwacosmos

+1

@mlwacosmos Тогда вам нужно будет предоставить более подробную информацию, потому что я уверен, что вышеупомянутые работы, и я понимаю точно * почему * он работает. –

0

Правильное выражение должно быть:

<s:if test="#parameters.action[0] == 1">YES 1</s:if><s:else>NOT 1</s:else>

Параметры запроса является отображением [Strinf, String []], Таким образом, вы должны получить доступ к нему, как и выше

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