2008-10-13 7 views
2

C'est notre première application JSF, et je suis en train d'intégrer le CSS de notre graphiste dans nos fichiers de facelets. Il me dit qu'il a besoin de nom et id attributs des balises d'entrée pour être le même que l'attribut pour de l'étiquette d'étiquette.Conflits d'attributs JSF/CSS

Sa demande:

<label for="username">User Name:</label> 
<input id="username" type="text" name="username" /> 

Cependant, lorsque le code JSF rend le HTML, je reçois des identifiants supplémentaires dans ces attributs.

Mon code Facelet:

<label for="username">User Name:</label> 
<h:inputText value="#{login.username}" id="username" name="username" /> 

XHTML final qui est envoyé au navigateur:

<label for="username">User Name:</label> 
<input id="j_id2:username" type="text" name="j_id2:username" /> 

Il est logique de moi d'un point de vue JSF, mais est-il un moyen pour moi de rencontrer notre demande du graphiste et rendre tout le monde heureux? Ou est-ce un mauvais contrôle JSF?

Merci!

Répondre

5

Vous pouvez utiliser la balise JSF outputLabel, qui devrait gérer les ids automatiquement:

<h:inputText id="username"> 
    <h:outputLabel for="username" value="User Name: "/> 
</h:inputText> 

Edit: Pour éviter toute confusion: Vous pouvez aussi mettre le outputLabel en dehors de l'élément inputText. Je l'utilise surtout comme ça.

+0

C'est fait! Merci! –

+0

Vous êtes les bienvenus! Peut-être que vous devriez le marquer comme la réponse acceptée alors –

Questions connexes