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
truese 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>.