АБНАЎЛЕННЕ (01/17/08): Гэты блог запісу аб перамовах больш дабра гіперспасылкі XSL: http://www.sharepointsecurity.com/blog/sharepoint/sharepoint-2007-development/rewriting-links-in-search-results-xslt.
Агляд і мэты: I had created a simple bar chart to serve as component on a dashboard. I’ll save the details on building charts for another post, але я не вынайшаў гэтую тэхніку (ні пытальніка, ў гэтых адносінах). It turned out there was a bug in the chart and while I fixed that, I took the opportunity to convert some labels into hyperlinks that pointed at the underlying list behind the graph. Напрыклад, there is a label with value "Hold". I wanted to turn the label into a hyperlink so that the user could click on it and drill down to the specific entries in the list whose status value is "Hold".
Крокі:
- Выкарыстоўвайце для Visual Studio SharePoint-Aware IntelliSense.
- Скапіюйце XSLT DVWP аўтара ў Visual Studio (стварыць пусты праект, дадаць файл XSL да праекту).
- Скапіяваць спасылку вы хочаце выкарыстоўваць у буфер абмену.
- Устаўце яго ў патрэбным месцы ў XSL.
- Convert URL argument separators on the query string from "&" to "&ампер;"
- URL-адрас кадуюць асобныя аргументы.
- Абгарніце што ўнутры <HREF…> </a>
Прыклад:
У мяне ёсць URL:
HTTP://[сервер]/[сайт]/Спісы / Адкрытае 20Positions/AllItems.aspx%?Выгляд ={84EEA2F5-121B-40B7-946F-0FA704A1DAA1}&FilterField1 = Рекрутеры&FilterValue1 = ўтрыманне
Я пераўтварыць яго ў:
<a HREF="Спісы / Адкрытае 20Positions/AllItems.aspx%?Выгляд =% 7b84EEA2F5-121B-40B7-946F-
0FA704A1DAA1}&ампер;FilterField1 = Рекрутеры&ампер;FilterValue1 = ўтрыманне"> Трымаць: </a>
Я ўручную ператварыў першы аргумент:
{84EEA2F5-121B-40B7-946F-0FA704A1DAA1}
да:
%7b84EEA2F5-121B-40B7-946F-0FA704A1DAA1}
(У гэтым, якая адкрывае фігурнай дужкі ператвараецца ў% 7b і закрывае дужкі ператвараецца ў% 7дн)
Другі і трэці аргументы’ Параметры ("FilterField1=Вярбоўнік" and "FilterValue1=Трымаць" адпаведна) не павінны быць закадзіраваны гіперспасылка, таму што яны не ўтрымліваюць небяспечныя сімвалы.
Заўвагі:
Гэты метад як правіла, павінны працаваць у любым месцы вы хочаце ўстаўляць гіперспасылкі ў XSLT, дзе ўключае ў сябе параметры гіперспасылкі на URL, такія як:
HTTP://[сервер]/[сайт]/Спісы / Адкрытае 20Positions/AllItems.aspx%?Выгляд ={84EEA2F5-121B-40B7-946F-0FA704A1DAA1}&FilterField1 = Рекрутеры&FilterValue1 = ўтрыманне
Я атрымаў URL сябе доступ да карыстацкі спіс і ўручную фільтрацыі на калонцы статусу (labeled "Recruiter" вышэй).