Con
SharePoint 2010 è possibile aggiungere nell'header della pagina dei link a file
JavaScript o
CSS tramite una
Feature.
Ecco l'esempio:
<?xml version="1.0" encoding="utf-8"?>
<Feature Id="F1B4D536-2FAC-49E1-B8BB-2A911CB3C317"
Title="Sgart - Add File to Header Page"
ActivateOnDefault="FALSE"
Description="Aggiunge file js e css alla master page"
ImageUrl="Sgart.Common/featureIcon.png"
Scope="Site"
xmlns="http://schemas.microsoft.com/sharepoint/">
<ElementManifests>
<ElementManifest Location="SgartHeaderFiles\Elements.xml" />
</ElementManifests>
</Feature>
<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<CustomAction Sequence="1" Location="ScriptLink"
ScriptSrc="~sitecollection/_layouts/Sgart.Common/jquery-1.8.3.min.js"
/>
<CustomAction Sequence="12" Location="ScriptLink"
ScriptSrc="~sitecollection/_layouts/Sgart.Common/jquery.SPServices-0.7.2.min.js"
/>
<CustomAction Sequence="110" Location="ScriptLink"
ScriptSrc="~sitecollection/_layouts/Sgart.Common/jquery.dataTables.js"
/>
</Elements>
in questo caso ho aggiunto dei file
JavaScript tramite riferimento al file.
Indirettamente posso aggiungere anche dei
CSS inettando un blocco
JavaScript che inserisce il riferimento al file css:
<CustomAction Sequence="2000" Location="ScriptLink"
ScriptBlock="document.write('& lt;link rel=\'stylesheet\' type=\'text/css\' href=\'~sitecollection/_layouts/Sgart.Common/jquery.dataTables.css\'& gt;& lt;/' + 'link& gt;');"
/>
Attenzione: va fatto l'encoding html dei caratteri maggiore e minore all'interno dell'attributo ScriptBlock
Notare il riferimento al palceholder ~sitecollection che automaticamente inserisce la url della site collection
Per
SharePoint 2013 le url vanno modificate mettendo il
15 ad esempio: ~sitecollection/_layouts/
15/Sgart.Common/jquery-1.8.3.min.js
Vedi anche
CustomAction Element (Custom Action)