2012-09-29 23 views
6
<ui:define name="description" rendered="false"> 
    <meta name="description" content="do not render" /> 
</ui:define> 

Bu kodu xhtml sayfamda kullanıyorum, uygulamayı çalıştırdığımda meta açıklama hala devam ediyor. Bazı koşullara bağlı olarak meta açıklama etiketini kullanmak istiyorum. asıl düzeni:ui: rendered = "false" özniteliğiyle tanımla

<html xmlns="http://www.w3.org/1999/xhtml" 
     xmlns:ui="http://java.sun.com/jsf/facelets" 
     xmlns:h="http://java.sun.com/jsf/html"> 
    <h:head> 
     <ui:insert name="description" /> 
    </h:head> 
    ........... 
</html> 

web sayfası:

<ui:define>
<ui:composition xmlns="http://www.w3.org/1999/xhtml"      
       xmlns:ui="http://java.sun.com/jsf/facelets" 
       xmlns:h="http://java.sun.com/jsf/html" 
       xmlns:f="http://java.sun.com/jsf/core" 
       xmlns:p="http://primefaces.org/ui" 
       template="/templates/masterLayout.xhtml"> 

    <ui:define name="description" rendered="false"> 
     <meta name="description" content="do not render" /> 
    </ui:define> 
........... 
</ui:composition> 

cevap

13

görünüm oluşturma süresi boyunca çalışan bir taghandler değil, görüntüleme sırasında çalışan bir UIComponent görüntülenme süresi. Bu nedenle not, rendered özniteliğini destekler. Desteklenmeyen herhangi bir özellik sadece göz ardı edilir. Bunun yerine, <ui:fragment> kullanın.

<ui:define name="description"> 
    <ui:fragment rendered="false"> 
     <meta name="description" content="do not render" /> 
    </ui:fragment> 
</ui:define> 
İlgili konular