XSLT и jQuery проби

Аз са били правиш много XSLT и jQuery и мисленето, аз ще сподели няколко откъси, които други може да намерите за полезни в бъдеще.

Пример 1: Излъчват прости JavaScript / jQuery в XSLT:

<XSL:шаблон за съвпадение = "нещо" XML:космически = "запазите">

  <!– "Празно" е приятелски заявката филтрира скрито поле –>
  <скриптови тип = "текст/javascript">
    $(документ).готов(функция(){
      $("#QueryFriendlyFilters").вал("празно");
    });
  </скрипт>

</XSL:шаблон>

Този бит излъчва някои JavaScript, която изчаква на страницата, за да завърши зареждането (поради $(документ).готов(…)) и след това определя стойността на скрито поле QueryFriendlyFilters на литерален стойност "празно".

Пример 2: Употреба <XSL:Ако> за да проверите "по-голямо от",  "по-малко от", н.

<XSL:шаблон за съвпадение = "нещо" XML:космически = "запазите">

  <DIV ИД = "fdcAllFilters">
 
    <XSL:Ако test="@Count>0">
      <еталониране на клас = "fdcFilterLabel">Текущ филтри:</еталониране>
    </XSL:Ако>

    <!– повече неща се случва тук. –>

</XSL:шаблон>

Горните парченце проверява дали атрибут с име "Преброяване" на "нещо" на елемент е по-голямо от нула.  XML зад това би било нещо подобно:”

<нещо брой = "5" />

Пример 3: Обхождане на всички елементи, interspersing jQuery повиквания.

<!– Обхождане на всички филтри и да покаже правилното  връзки. –>
<XSL:за всеки избор = "UserFilter">

  <клас = "FilterHref" href = "javascript:mySubmitPage("RemoveUserFilter",'{@ ИД}’)">[X]</а>

  <еталониране на клас = "fdcFilterLabel"><XSL:стойността на select="@FilterValue"/></еталониране>

  <скриптови тип = "текст/javascript">

    $(документ).готов(функция(){
        <XSL:текст><![НЕЗАТВОРЕН[$("#QueryFriendlyFilters").вал( ($("#QueryFriendlyFilters").вал() + " ]]></XSL:текст>\"<XSL:стойността на select="@FilterValue"/>\"<XSL:текст><![НЕЗАТВОРЕН["));]]></XSL:текст>
    });

  </скрипт>

</XSL:за всеки>

Горните фрагмент е и най-сложните и може да има по-лесни начина да го направите.

XML зад това изглежда приблизително по следния начин:

<UserFilter ИД = "123" FilterValue = "xyzzy" />

Това парченце е iterating чрез <UserFilter> възли. 

Тя първо да излъчва котва, етикет, когато се натисне предизвика на JavaScript функция, която вече е на страницата, "mySubmitPage" и минава на стойността на даден атрибут на <UserFilter> възел, наречена "ИД". 

След това тя да излъчва някои jQuery, която изчаква на страницата, за да се зареди.  Този jQuery актуализира скрито поле с име "QueryFriendlyFilters" чрез добавяне на стойността на атрибута FilterValue.  Забележка всички луди <XSL:текст> и <![НЕЗАТВОРЕН[ … ]]> неща.

Това е, надежда, той помага!

</край>

Абонирайте се за моя блог.

Следвайте ме на Twitter в http://www.twitter.com/pagalvin

2 мисли за "XSLT и jQuery проби

    1. Пол Galvin Мнение автор

      Здравей, за съжаление аз никога не отговори на това. Това е древна в този момент и така че няма да се опитвам. Надявам се разбра какво се опитвате да направите :).

Оставете отговор

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани *