Mostres de XSLT i jQuery

He estat fent un munt de XSLT, jQuery i thought que i share uns quants fragments que altres el poden trobar útils en el futur.

Exemple 1: Emeten simple JavaScript / jQuery a XSLT:

<XSL:Partit de plantilla = "alguna cosa" XML:espai = "preservar">

  <!– Fora el camp ocult de filtres amistós de consulta en blanc –>
  <tipus d'escriptura = "text/javascript">
    $(document).preparat(funció(){
      $("#QueryFriendlyFilters").val("buit");
    });
  </script>

</XSL:plantilla>

Aquella mica emet una mica de JavaScript que espera per a la pàgina per acabar de carregar (a causa de la $(document).preparat(…)) i llavors conjunts el valor d'un camp ocult anomenat QueryFriendlyFilters al valor literal "buida".

Exemple 2: Ús <XSL:Si> per comprovar "superior",  "menys de", etc.

<XSL:Partit de plantilla = "alguna cosa" XML:espai = "preservar">

  <Div id = "fdcAllFilters">
 
    <XSL:Si test="@Count>0">
      <span class = "fdcFilterLabel">Filtres actuals:</span>
    </XSL:Si>

    <!– més coses passa aquí. –>

</XSL:plantilla>

El fragment damunt comprovacions per veure si hi ha un atribut anomenat "Comptar" de l'element "alguna cosa" més gran que zero.  L'XML darrere d'això seria una cosa així com:”

<alguna cosa Count = "5" />

Exemple 3: ITER a través de tots els elements, intercalant trucades de jQuery.

<!– ITER a través de tots els filtres i mostrar la correcta  enllaços. –>
<XSL:per a cada select = "UserFilter">

  <una classe = "FilterHref" href = "javascript:mySubmitPage('RemoveUserFilter','{@ ID}’)">[X]</un>

  <span class = "fdcFilterLabel"><XSL:valor de select="@FilterValue"/></span>

  <tipus d'escriptura = "text/javascript">

    $(document).preparat(funció(){
        <XSL:text><![CDATA[$("#QueryFriendlyFilters").val( ($("#QueryFriendlyFilters").val() + " ]]></XSL:text>\"<XSL:valor de select="@FilterValue"/>\"<XSL:text><![CDATA["));]]></XSL:text>
    });

  </script>

</XSL:per a cada>

El fragment de dalt és el més complex i hi pot haver més fàcils maneres de fer-ho.

L'XML darrere d'això s'assembla més o menys com aquest:

<UserFilter ID = FilterValue "123" = "xyzzy" />

Aquest fragment és itereu a través de <UserFilter> Nodes. 

En primer lloc que emet un àncora d'etiquetes que quan fet clic invoca una funció de JavaScript que és ja a la pàgina, "mySubmitPage" i de passa el valor d'un atribut la <UserFilter> node anomenat "ID". 

Llavors emet alguns jQuery que espera per a la pàgina carregar.  Aquell jQuery actualitzacions d'un camp d'amagat anomenat "QueryFriendlyFilters" per afegir el valor de l'atribut FilterValue.  Tingueu en compte tot el boig <XSL:text> i <![CDATA[ … ]]> matèria.

Això és tot, esperança que ajudi!

</final>

Subscriure's al meu blog.

Follow me on Twitter http://www.twitter.com/pagalvin

2 comentaris a "Mostres de XSLT i jQuery

    1. Paul Galvin enviament autor

      Hola, ho sento jo mai va respondre a això. En aquest punt és antiga i així no intento. Espero que imaginava què estaven intentant fer :).

      Resposta

Deixi una contestació

no es publicarà la seva adreça de correu electrònic. Els camps necessaris estan marcats *