Я займаюся багато XSLT і jQuery, і думав, я хотів би поділитися трохи фрагменти, які інші можуть виявитися корисними в майбутньому.
Приклад 1: Виділяють простий JavaScript / jQuery в XSLT:
<перетворення XSL:Шаблон матч = "щось" XML:простір = "Зберегти">
<!– Порожніх запитів дружні фільтри прихованим полем –>
<скрипт тип = "текст/javascript">
$(документ).готові(функція(){
$("#QueryFriendlyFilters").Валь("порожні");
});
</сценарій>
</перетворення XSL:Шаблон>
Що біт випромінює JavaScript, що чекає на сторінці, щоб процес завантаження (з-за $(документ).готові(…)) і потім набори значення приховані поля названа QueryFriendlyFilters буквальне значення "порожній".
Приклад 2: Використання <перетворення XSL:Якщо> Щоб перевірити «більше за», "менше", д.
<перетворення XSL:Шаблон матч = "щось" XML:простір = "Зберегти">
<DIV id = "fdcAllFilters">
<перетворення XSL:Якщо test="@Count>0">
<охоплюють клас = "fdcFilterLabel">Поточних фільтрів:</Тривалість>
</перетворення XSL:Якщо>
<!– більше речей відбувається тут. –>
</перетворення XSL:Шаблон>
Вище фрагмент перевіряє, щоб побачити, якщо атрибут, названий "Count", "щось" елемента, більше нуля. XML за це буде щось на зразок:”
<те, що кількість = "5" />
Приклад 3: Перебору всіх елементів, пересипаючи jQuery дзвінки.
<!– Перебору всі фільтри та відобразити правильний посилання. –>
<перетворення XSL:для кожного виділення = "UserFilter">
<клас = "FilterHref" HREF = "javascript:mySubmitPage('RemoveUserFilter','{@ ID}’)">[X]</на>
<охоплюють клас = "fdcFilterLabel"><перетворення XSL:значення з select="@FilterValue"/></Тривалість>
<скрипт тип = "текст/javascript">
$(документ).готові(функція(){
<перетворення XSL:текст><![CDATA[$("#QueryFriendlyFilters").Валь( ($("#QueryFriendlyFilters").Валь() + " ]]></перетворення XSL:текст>\"<перетворення XSL:значення з select="@FilterValue"/>\"<перетворення XSL:текст><![CDATA["));]]></перетворення XSL:текст>
});
</сценарій>
</перетворення XSL:для кожного>
Вище фрагмент є найбільш складним і може бути простіше способу зробити це.
XML за це виглядає приблизно так:
<UserFilter ID = "123" FilterValue = "xyzzy" />
Цей фрагмент ітерації через <UserFilter> вузли.
Він вперше випромінює прив'язку тег, що при натисканні викликає JavaScript функції, що вже на сторінці, "mySubmitPage" і проходить значення атрибута на <UserFilter> вузлом ім'я «Ідентифікатор».
Потім він випромінює jQuery, що чекає на сторінку для завантаження. Що jQuery оновлення прихованим поле з ім'ям "QueryFriendlyFilters" за допомогою додавання значення атрибута FilterValue. Примітка всі божевільні <перетворення XSL:текст> і <![CDATA[ … ]]> речі.
Все, сподіваюся, це допоможе!
</кінець>
Підписатися на мій блог.
Йди за мною на Twitter в http://www.twitter.com/pagalvin