Np .: h:inputText
wyrenderuje plik "input type='text'"
. Jaki tag JSF może renderować "div"
tag?
Np .: h:inputText
wyrenderuje plik "input type='text'"
. Jaki tag JSF może renderować "div"
tag?
Odpowiedzi:
Możesz utworzyć DIV
komponent za pomocą <h:panelGroup/>
. Domyślnie <h:panelGroup/>
wygeneruje SPAN w kodzie HTML.
Jeśli jednak określisz layout="block"
, komponent będzie występował DIV
w wygenerowanym kodzie HTML.
<h:panelGroup layout="block"/>
div
tagu? Jaki może być problem, jeśli w ogóle?
div
tagu, ale w tym przypadku ten komponent nie będzie częścią drzewa komponentów JSF (tj. Nie będzie dostępny w kodzie Java). Oprócz tego nie będziesz mógł odświeżyć go bezpośrednio za pomocą Ajax (z wyjątkiem, oczywiście, jeśli wykonasz odświeżanie bezpośrednio w części kodu JavaScript).
style
lub styleClass
atrybutu, div
aby wydarzyło się a ... co sprawia, że historia jest absolutnie dziwna. IMHO: a zwykły <h:panelGroup layout="block">
renderuje <span>
? To nie ma dla mnie sensu.
Oprócz <h:panelGroup>
komponentu (co jest dla mnie pewnym zaskoczeniem), możesz użyć <f:verbatim>
tagu z parametrem escape ustawionym na, false
aby wygenerować dowolne znaczniki. Na przykład:
<f:verbatim escape="true">
<div id="blah"></div>
</f:verbatim>
Pamiętaj, że jest to trochę mniej eleganckie niż panelGroup
rozwiązanie, ponieważ musisz wygenerować to zarówno dla znacznika początkowego, jak i końcowego, jeśli chcesz otoczyć div
tagiem dowolny kod JSF .
Alternatywnie, wszystkie główne struktury interfejsu użytkownika mają div
znacznik komponentu lub możesz napisać własny.
możesz użyć komponentu myfaces tomahawk
http://myfaces.apache.org/tomahawk-project/tomahawk12/tagdoc/t_div.html