2016-07-01 4 views
0

У меня есть эта модельfreemarker как печатать переменную, если она не является нулевой и не печатать, если она равна нулю?

ModelAndView modelAndView = new ModelAndView("login"); 
     String msisdn = request.getParameter("msisdn"); 
     modelAndView.addObject("msisdn", msisdn); //may be NULL 
     return modelAndView; 

и страницу, где

<#if msisdn??> 
    <input type="text" class="form-control" placeholder="phone" value="${msisdn}"> 
<#else> 
    <input type="text" class="form-control" placeholder="phone"> 
</#if> 

Если MSISDN == NULL Я хочу показать placeholder="phone" но если MSISDN не нулевой я хочу показать.

Это работа, но я думаю, что это плохая практика. Я не хочу копировать всю строку и дублировать ее в коде. Могу ли я писать так?

<input type="text" class="form-control" placeholder="phone" value="<#if msisdn != null>${msisdn}</#if>"> 

или

или что-то еще в FreeMarker?

ответ

1

использование ! сделать это:

<input type="text" class="form-control" placeholder="phone" value="${msisdn!}"> 
+0

Я прочитал это осуждается. это правда? – user5620472

+0

@ user5620472 это правда, вы можете проверить: http://freemarker.org/docs/ref_depr_builtin.html – chengpohi

+0

Кажется, вы можете использовать '$ {msisdn?" "}' Для замены '!' – chengpohi

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