Control slouží pro vypsání linku na soubor uložený v poli typu <File>
nebo prvku kolekce <FileCollection>
. Generované odkazy na soubory nikdy nevedou přímo na daný soubor, ke stažení souboru se využívá servírovacího skriptu (speciální .aspx stránky).
<je:fileLink runat="server" field="someVariable.someFile" />
Pole typu <File>
obsahuje několik automaticky generovaných vnitřních polí (např. velikost souboru), jejichž obsah lze vypsat pomocí controlu <je:item>
. Viz popis pole typu <File>
.
Atributy
class nepovinný [string, interpolace]
Hodnota atributu bude beze změny přenesena do výstupního kódu do atributu
class
.container nepovinný [ID containeru, .prev, .next, .parent]
ID containeru, který určuje kontejnerovou proměnnou controlu (viz Kontejnerování), případně modifikace proměnné (viz Vnitřní pole proměnných).
directOpen nepovinný [true, false]
Standardně JellyPot soubory servíruje tak, aby se nabídly ke stažení. Nastavením tohoto atributu na
true
se soubor bude otvírat přímo v okně prohlížeče (pokud je to s ohledem na typ souboru možné).field povinný [jméno pole typu File]
Jméno pole typu
<File>
, s jehož obsahem control pracuje.idForClient nepovinný [string, interpolace]
Hodnota atributu bude beze změny přenesena do výstupního kódu do atributu
id
.mode nepovinný [link, text, sitemap]
Pomocí atributu lze změnit výslednou podobu html kódu. Kromě elementu
<a>
lze tento control použít k zobrazení odkazu, na nějž control směřuje.- link – control vypíše HTML tag
<a>
, URL je vypsána do atributuhref
html <je:fileLink runat="server" field=".file">toto je odkaz</je:fileLink>
- text – control vypíše URL jako text. URL bude vypsána jako lokální, tj. bez adresy serveru. Control při tomto použití nesmí obalovat žádný obsah
html <je:fileLink runat="server" field=".file" mode="text" />
- sitemap – control vypíše URL jako text. URL bude vypsána kompletní, tj. včetně adresy serveru a protokolu. Control při tomto použití nesmí obalovat žádný obsah
html <je:fileLink runat="server" field=".file" mode="sitemap" />
- link – control vypíše HTML tag
style nepovinný [string, interpolace]
Hodnota atributu bude beze změny přenesena do výstupního kódu do atributu
style
.title nepovinný [string, interpolace]
Hodnota atributu bude beze změny přenesena do výstupního kódu do atributu
title
.
Lze také použít atributy HTML pro události myši a klávesnice (onclick, ondblclick, onmousedown, onmouseup, onmouseover, onmousemove, onmouseout, onkeypress, onkeydown, onkeyup). Jejich obsah je přímo přepsán do výstupu.
Příklad
Mějme v Site.config proměnnou page
následujícího typu:
<Var name="page" type="PageWithFile" /> ... <Type name="PageWithFile"> <File name="someFile" /> </Type>
Odkaz pro stažení vypíšeme do stránky takto:
<je:filelink runat="server" field="page.someFile">Stáhnout soubor</je:filelink>
Pokud chceme vypsat i název souboru:
<je:filelink runat="server" field="page.someFile"> <je:item runat="server" field="page.someFile.altOrName" /> </je:filelink>
A pokud chceme vypsat i název souboru, velikost a doplnit odkaz o ikonu příslušného typu souboru:
<je:filelink runat="server" field="page.someFile"> <je:fileicon runat="server" field="page.someFile" set="icons32" /> <je:item runat="server" field="page.someFile.altOrName" /> (<je:item runat="server" field="page.someFile.size" />) </je:filelink>
Více o použití ikon viz <je:fileicon>
.