SharePoint:ScriptLinkテスト

4357 ワード

最終結論:
<SharePoint:ScriptLink  ID="SPlink1"  Name="sp.ui.tgportal.js"   Defer="false"  runat="server" OnDemand="false" Localizable="true" />

defer:
タイムリーに出力するかどうかを決定し、デフォルトは「false」、「true」は最後の出力です.
OnDemand:
RegisterSodで登録するかどうかを決定し、登録を使用する場合、ページのロードが完了するとすぐにjsをロードするのではなく、関数を呼び出す前にSP.SODを使用するなどのロードを行う.executeFunc("sp.ui.tgportal.js", null, alert(0));
Localizable:
2052でjsを検索するかどうかを決定し、falseはlayoutsで直接検索します.
LoadAfterUI:
ヘッドで出力するかbodyが完了する前にするかを決定します
参照:http://www.ilovesharepoint.com/2010/08/sharepoint-scripts-on-demand-spsod.html
         Sharepoint JS CSS登録
2011-12-30追加
SharePoint:ScriptLinkが内部で呼び出したのもClientScript.RegisterStartupScript RegisterClientScriptBlock RegisterClientScriptInclude
jsパスで重複登録していないか否かを判断する
page2.ClientScript.RegisterStartupScript(typeof(ScriptLink), str, info.ToScriptBlock(page));
str = ExtractFilename(name) + localizable.ToString();
=========================================================
部分テストデータ
=========================================================
 

結果:header付近
25:document.write(''); 26:document.write('');
=========================================================

結果:RegisterSodより前
//');//]]> RegisterSod("sp.core.js",…
=================================================================

または

結果:
RegisterSod("core.js", "\u002f_layouts\u002f2052\u002fcore.js?rev=KpeTWMrqjCSYYu4RiO0\u00252B1Q\u00253D\u00253D"); RegisterSod("sp.ui.tgportal.js",
==========================================================


結果:
//');//]]> RegisterSod("sp.core.js",
===========================================================

結果:
25:document.write(''); 26:document.write('');