Ажурирање (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-свесни IntelliSense.
- Копирате DVWP на XSLT во Visual Studio (креира празна проект, додадете датотека XSL да на проектот).
- Копирај го линкот сакате да го користите во таблата со исечоци.
- Ставете го во вистинската локација, во XSL.
- Convert URL argument separators on the query string from "&" to "&засилувач;"
- Url-кодираат поединечните аргументи.
- Завиткајте дека внатре во <a href…> </на>
Пример:
Имам рачно:
HTTP://[сервер]/[сајт]/Листа / Отворено% 20Positions/AllItems.aspx?Прикажи ги ={84EEA2F5-121B-40B7-946F-0FA704A1DAA1}&FilterField1 = агентот&FilterValue1 = Држете
Јас го претвори во:
<на href="Листа / Отворено% 20Positions/AllItems.aspx?Прикажи ги =% 7b84EEA2F5-121B-40B7-946F-
0FA704A1DAA1% 7г&засилувач;FilterField1 = агентот&засилувач;FilterValue1 = Држете"> Се одржи: </на>
Имам рачно трансформиран првиот аргумент од:
{84EEA2F5-121B-40B7-946F-0FA704A1DAA1}
да:
%7b84EEA2F5-121B-40B7-946F-0FA704A1DAA1% 7г
(Во овој, отворена заграда преобразува во% 7б и завршната голема заграда се преобразува во% 7г)
Во вториот и третиот аргументи’ параметри ("FilterField1=Агентот" and "FilterValue1=Се одржи" соодветно) не треба да биде URL-кодирани, бидејќи тие не содржат никаква небезбедни карактери.
Белешки:
Оваа техника генерално треба да работат каде што сакате да го вградите на хиперврска во XSLT каде хиперврска вклучува параметри на URL-то, како што се:
HTTP://[сервер]/[сајт]/Листа / Отворено% 20Positions/AllItems.aspx?Прикажи ги ={84EEA2F5-121B-40B7-946F-0FA704A1DAA1}&FilterField1 = агентот&FilterValue1 = Држете
Добив рачно себе, со пристапување на сопствени листа и рачно филтрирање за статусот колона (labeled "Recruiter" погоре).