UPDATE (01/17/08): Hierdie blog inskrywing praat oor meer hyperlink XSL goedheid: http://www.sharepointsecurity.com/blog/sharepoint/sharepoint-2007-development/rewriting-links-in-search-results-xslt.
Oorsig en objektiewe: 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, maar ek het nie uitvind dat die tegniek (of die vraagteken, vir die saak). 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. Byvoorbeeld, 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".
Stappe:
- Gebruik visuele ateljee vir Sharepoint-bewus IntelliSense.
- Kopieer die DVWP se XSLT in Visual Studio (die skep van 'n leë projek, voeg 'n XSL-lêer aan die projek).
- Kopieer die skakel wat jy wil gebruik in die knipbord.
- Plak dit in die regte plek in die XSL.
- Skakel URL argument skeiers op die navraag string uit "&" na "&"
- Url-enkodeer individuele argumente.
- Draai dat binne 'n <a href…> </1>
Voorbeeld:
Ek het 'n URL:
http://[bediener]/[webwerf]/Lyste / Open% 20Positions/AllItems.aspx?Sien ={84EEA2F5-121B-40B7-946F-0FA704A1DAA1}&FilterField1 = Recruiter&FilterValue1 = Hou
Ek sit dit in:
<1 href="Lyste / Open% 20Positions/AllItems.aspx?Sien =% 7b84EEA2F5-121B-40B7-946F-
0FA704A1DAA1% 7d&FilterField1 = Recruiter&FilterValue1 = Hou"> Hou: </1>
Ek het die hand omskep die eerste argument van:
{84EEA2F5-121B-40B7-946F-0FA704A1DAA1}
aan:
%7b84EEA2F5-121B-40B7-946F-0FA704A1DAA1% 7d
(In hierdie, die oop stut verander na% 7b en die sluitingsdatum stut transformeer na% 7d)
Die tweede en derde argumente’ parameters ("FilterField1 =Recruiter" en "FilterValue1 =Hou" onderskeidelik) hoef nie te URL-geïnkripteer wees omdat hulle nie 'n onveilige karakters bevat.
Notas:
Hierdie tegniek word in die algemeen werk waar jy wil 'n skakel in die XSLT waar die hyperlink sluit parameters op die URL soos in te sluit:
http://[bediener]/[webwerf]/Lyste / Open% 20Positions/AllItems.aspx?Sien ={84EEA2F5-121B-40B7-946F-0FA704A1DAA1}&FilterField1 = Recruiter&FilterValue1 = Hou
Ek het die URL self deur die toegang tot die persoonlike lys, en met die hand filter op die status kolom (gemerk "Recruiter" bo).
Cristina, dat 84EE.. is 'n GUID wat uniek identifiseer die lys intern. Jy kan dit kry deur te trek op die oog in jou 'browser' en inspeksie van die URL van jou 'browser'.
Waar of hoe genereer hierdie kode '84EEA2F5-121B-40B7-946F-0FA704A1DAA1′
Moontlik kan wees om dit te doen …&FilterField1 = Recruiter Center &FilterValue1 = Hou CE / ASM?
Of
Moet ek die spasies tussen hulle te verwyder?