Man daryti daug XSLT ir jQuery ir thought I 'd share kelis fragmentus, kad kiti gali rasti naudingos ateityje.
Pavyzdys 1: Išmeta paprasta veikiancio JavaScript / jQuery, XSLT:
<XSL:šablono rungtynės = "kažkas" XML:erdvės = "išsaugoti">
<!– Tuščias iš užklausos draugiškas filtrai paslėpto lauko –>
<scenarijaus tipas = "text/javascript">
$(dokumento).paruošta(funkcija(){
$("#QueryFriendlyFilters").val("tuščias");
});
</scenarijų>
</XSL:šablonas>
Kad šiek tiek skleidžia tam JavaScript, kad laukia puslapio įkėlimą (Todėl, kad $(dokumento).paruošta(…)) ir tada rinkiniai paslėpto lauko vertė pavadinimu QueryFriendlyFilters raidinė reikšmė "tuščias".
Pavyzdys 2: Naudoti <XSL:Jei> patikrinti "didesnis už", "mažiau kaip", ir tt.
<XSL:šablono rungtynės = "kažkas" XML:erdvės = "išsaugoti">
<div id = "fdcAllFilters">
<XSL:Jei test="@Count>0">
<span class = "fdcFilterLabel">Esami filtrai:</tarpą>
</XSL:Jei>
<!– Daugiau stuff vyksta čia. –>
</XSL:šablonas>
Aukščiau fragmentą tikrina jei atributas, pavadintas "Skaičiuoti", "kažkas" elementas yra didesnis už nulį. XML už tai būtų kažkas panašaus:”
<kažkas Count = "5" />
Pavyzdys 3: Kartoti per visus elementus, Interspersing jQuery skambučius.
<!– Iterate per visus filtrus ir parodyti teisingą nuorodos. –>
<XSL:už kiekvieną pasirinkite = "UserFilter">
<a class = "FilterHref" href = "javascript:mySubmitPage("RemoveUserFilter",'{@ID}’)">[X]</a>
<span class = "fdcFilterLabel"><XSL:vertė-apie select="@FilterValue"/></tarpą>
<scenarijaus tipas = "text/javascript">
$(dokumento).paruošta(funkcija(){
<XSL:tekstas><![CDATA[$("#QueryFriendlyFilters").val( ($("#QueryFriendlyFilters").val() + " ]]></XSL:tekstas>\"<XSL:vertė-apie select="@FilterValue"/>\"<XSL:tekstas><![CDATA["));]]></XSL:tekstas>
});
</scenarijų>
</XSL:už kiekvieną>
Aukščiau ištrauka yra pati sudėtingiausia ir gali būti lengviau būdų tai padaryti.
XML už tai atrodo maždaug taip:
<UserFilter ID = "123" FilterValue = "xyzzy" />
Šiame fragmente yra Iteracja per <UserFilter> mazgų.
Ji pirmą kartą skleidžia žymę žymėti, kai paspaudėte remiasi JavaScript funkcija, kuri jau yra puslapyje, "mySubmitPage" ir pereina esančio atributo reikšmė, <UserFilter> mazgo pavadinimu "ID".
Ji tada skleidžia kai jQuery, kad laukia, kad įkelti. Kad jQuery atnaujina paslėptas laukas, pavadintas "QueryFriendlyFilters" pridedant FilterValue atributo. Pastaba visi crazy kirm <XSL:tekstas> ir <![CDATA[ … ]]> daiktai.
Štai ir viskas, Tikiuosi, kad jis padeda!
</pabaigos>
Prenumeruoti savo dienoraštį.
Sekite mane Twitter ne http://www.twitter.com/pagalvin