Greitai ir lengvai: Įterpti hipersaitą į duomenų rodinio tinklapio dalis XSLT

NAUJINIMAS (01/17/08): Šio dienoraščio įrašas kalbama apie daugiau hipersaitą XSL gerumo: http://www.sharepointsecurity.com/blog/sharepoint/sharepoint-2007-development/rewriting-links-in-search-results-xslt.

Apžvalga ir tikslas: Aš sukūrėme paprastas juostinę diagramą kaip komponentą, ataskaitų sritis. Aš išsaugoti duomenis statybos diagramos kitą pranešimą, bet aš ne sugalvoti kad technika (nei klaustuką, Šiuo klausimu). Paaiškėjo, įvyko klaida diagramoje, o aš nustatoma, kad, Aš paėmė galimybę konvertuoti kai kurios Žymos pavesti hipersaitais, nurodė pagrindinius sąrašą už grafikas. Pvz., yra etiketė su reikšme "Laikyti". Aš norėjau, kad etiketės paversti hipersaitu, kad vartotojas galėtų paspauskite ant jo ir pasirinkite konkrečius įrašus kurių būsena reikšmė yra "Turėti" sąraše.

Žingsniai:

  1. Naudoti visual studio Prisitaikantis prie SharePoint intellisense.
  2. Kopijuoti į DVWP XSLT į visual studio (sukurti tuščią projektą, XSL failo įtraukimas į projekto).
  3. Kopijuoti saitą, kurį norite naudoti į mainų sritį.
  4. Įklijuokite jį į reikiamą vietą į XSL.
  5. Konvertuoti URL argumentas skyriklius ant užklausos eilutės nuo"&" "&"
  6. URL koduoti atskirų argumentai.
  7. Wrap kad viduje, <a href…> </a>

Pavyzdys:

Turiu ADRESĄ:

http://[serverio]/[svetainės]/Lists/Open Positions/AllItems.aspx?Rodyti ={84EEA2F5-121B-40B7-946F-0FA704A1DAA1}&FilterField1 = darbdavys&FilterValue1 = Hold

Aš konvertuoti jį į:

     <a href="Lists/Open Positions/AllItems.aspx?Rodyti = % 7b84EEA2F5-121B-40B7-946F-
0FA704A1DAA1 %7 d&amp;FilterField1 = darbdavys&amp;FilterValue1 = Hold"> Laikykite: </a>

Aš rankiniu būdu pavertė pirmasis argumentas iš:

{84EEA2F5-121B-40B7-946F-0FA704A1DAA1}

į:

%7b84EEA2F5-121B-40B7-946F-0FA704A1DAA1 %7 d

(Šiame, atidaryti riestinį skliaustą transformuojasi į % 7b ir uždarymo petnešomis transformacijas %7 d)

Antra ir trečia argumentų’ parametrai ("FilterField1 =Darbdavys" ir "FilterValue1 =Laikykite" atitinkamai) nereikia būti kodavimą nes jie neagliutinuoja nesaugių simbolių.

Pastabos:

Šis metodas paprastai dirbtų kur norite įterpti hipersaitą XSLT kur hipersaitas yra parametrų URL pavyzdžiui:

http://[serverio]/[svetainės]/Lists/Open Positions/AllItems.aspx?Rodyti ={84EEA2F5-121B-40B7-946F-0FA704A1DAA1}&FilterField1 = darbdavys&FilterValue1 = Hold

Aš gavo paties URL prie pasirinktinio sąrašo ir rankiniu būdu filtravimo stulpelyje būsena (pažymėti "darbdavys" virš).

6 mintys apie "Greitai ir lengvai: Įterpti hipersaitą į duomenų rodinio tinklapio dalis XSLT

  1. Paul Galvin

    Cristina, kad 84EE.. GUID, kuri unikaliai identifikuoja sąrašo viduje yra. Galėsite jį traukiant naršyklės rodinį ir tikrinti savo naršyklės URL.

    Atsakyti
  2. Cristina Perez Otaiza

    kur ir kaip sukurti šį kodą "84EEA2F5-121B-40B7-946F-0FA704A1DAA1′

    Galima tai daryti …&FilterField1 = Recruiter centras &FilterValue1 = turėti CE / ASM?

    Arba
    Ar reikia pašalinti tarpus tarp jų?

    Atsakyti
  3. Eric Anderson
    Ar turite kokių pasiūlymų kur norite perduoti duomenis iš SharePoint sąrašo, kaip FilterValue1 padėčiai, ir kur to stulpelio reikšmė gali būti jungimo? (Aš bandė daug būdų, kaip koduoti/pabėgti vertė, bet ne, daug laimės, perduoti ją tinkamai.)
    Atsakyti
  4. Costas Tsaklas
    Aš mačiau pvz ne Help Desk, taikymo, "fab 40". Aš nežinau, kaip jis buvo sukurtas ir Štai kodėl problema aš laukiu veiksmus kaip tai padaryti
    Atsakyti
  5. Paul Galvin
    Aš nebuvo išrasti tai, bet tai keista, kaip sunku rasti.
    Aš atėjau, visoje yra funkcinis pavyzdys, tai manau, kad viena iš pagal "fab 40" Šablonai.
    Tai duomenų rodinio tinklapio dalis su XSLT, kuris generuoja grafikas. Tikrai ketinu daryti ją.
    Atsakyti
  6. Costas Tsaklas
    Aš nekantriai laukia į pranešimą apie kuriant diagramą. Aš ieškojau informacijos apie tai, kaip sukurti sąrašus pagrindu diagramas (pvz. atviras, išspręstos problemos, procentai ir pan.) ir aš negaliu rasti bet kurį. ačiū
    Atsakyti

palik atsakymą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *