Unë kam qenë duke bërë një shumë e XSLT dhe jQuery dhe mendova se do të ndajnë disa copra pak se të tjerët mund të gjeni të dobishme në të ardhmen.
Shembull 1: Lëshojnë JavaScript thjeshtë / jQuery në XSLT:
<XSL:template match="something" xml:space="preserve">
<!– Bosh jashtë query miqësore fushë filtra fshehur –>
<script type="text/javascript">
$(dokument).gati(funksion(){
$("#QueryFriendlyFilters").val("empty");
});
</dorëshkrim></XSL:shabllon>
Kjo pak lëshon disa JavaScript që pret për faqe për të përfunduar ngarkimit (për shkak të $(dokument).gati(...)) dhe pastaj përcakton vlerën e një fushë të fshehur emrin QueryFriendlyFilters me vlerën literal "bosh".
Shembull 2: Përdorim <XSL:nëse> për të kontrolluar "e madhe se", "Më pak se", etj.
<XSL:template match="something" xml:space="preserve">
<div id="fdcAllFilters">
<XSL:if test="@Count>0">
<span class="fdcFilterLabel">Filtra aktuale:</hapësirë>
</XSL:nëse><!– shumë gjëra që ndodh këtu. –>
</XSL:shabllon>
Snippet më sipër kontrollon për të parë nëse një atribut i quajtur "Count" e elementit "diçka" është më i madh se zero. XML prapa kjo do të jetë diçka si:"
<diçka Count = "5" />
Shembull 3: Iterate nëpër të gjitha elementet, interspersing thirrje jQuery.
<!– Iterate nëpër të gjitha filtrat dhe të shfaqin saktë Lidhje. –>
<XSL:for-each select="UserFilter"><a class="FilterHref" href="javascript:mySubmitPage(‘RemoveUserFilter’,'{@ ID}')">[X]</një>
<span class="fdcFilterLabel"><XSL:value-of select="@FilterValue"/></hapësirë>
<script type="text/javascript">$(dokument).gati(funksion(){
<XSL:tekst><![CDATA[$("#QueryFriendlyFilters").val( ($("#QueryFriendlyFilters").val() + " ]]></XSL:tekst>\"<XSL:value-of select="@FilterValue"/>\"<XSL:tekst><![CDATA["));]]></XSL:tekst>
});</dorëshkrim>
</XSL:për njëri->
Snippet e mësipërme është më komplekse dhe nuk mund të jetë mënyra më e lehtë për ta bërë atë.
XML prapa kjo duket afërsisht si kjo:
<UserFilter ID = "123" FilterValue = "xyzzy" />
Kjo snippet është iterating përmes <UserFilter> nyjet.
Ajo i parë lëshon një tag spirancë se kur klikohet thirret një funksion JavaScript që është tashmë në faqen, "MySubmitPage" dhe kalon vlerën e një atribut në <UserFilter> Nyja e quajtur "ID".
Ajo pastaj lëshon disa jQuery që pret për faqe të ngarkesës. Kjo jQuery përditësime një fushë fshehur quajtur "QueryFriendlyFilters" duke shtuar vlerën e atribut FilterValue. Vini re të gjitha çmendur <XSL:tekst> dhe <![CDATA[ ... ]]> sende.
Kjo është ajo, shpresoj se kjo ndihmon!
</fund>
Atëherë ejani pas meje në Twitter në http://www.twitter.com/pagalvin
Can I use this approach to filter multiple list webparts in SharePoint via a XSLT?
Hi, Na vjen keq unë kurrë nuk u përgjigj për këtë. It’s ancient at this point and so I won’t try. I hope you figured out what you were trying to do :).