Do you deploy the script files to "_layouts" or the content database?
If "_layouts," do you use a <ScriptLink> tag or a <script> tag?
Do you deploy the script files to "_layouts" or the content database?
If "_layouts," do you use a <ScriptLink> tag or a <script> tag?
Place your script files under
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\LAYOUTS\CUSTOMAPPNAME\JS
And add the script tag
<script type="text/javascript" language="javascript" src="/_layouts/CUSTOMAPPNAME/JS/script.js"></script>
Please don't put the script files in the content database. In other other words don't upload it into a Document Library etc, saves round-trip to the database to get the script files every time the page is refreshed.
This has been discussed before recently.
Assetlib has its advantages (it gets cached so i wouldnt worry alot about performance) with versioning and can be used for cloud and multitenancy (as it is not stored on the disk). LAYOUT doesnt suffer from incorrect max-age, so a single roundtrip is saved here.
As always with SharePoint, the answer is, that it depends...
Regarding scriptlink and cssregistration i must admit i usually have CSS and HTML gurus to do that stuff for me, but i am sure i read somewhere that script and link tags are discarded by SharePoints safe mode parser. Anyways we always use scriptlink and cssregistration, since it is what the product does itself.
if you are deploying your master to the file system - then feel free to deploy your scripts there as well (_layouts\yourapp is the answer). If you are deploying your master to the gallery, put your scripts/styles on the same level as well (assetlib is cool). as you can see, I just want to bring scope/visibility to play here