問題描述
包括JavaScript是有可能的RenderingTemplate 內登記(包括)的JavaScript? (RenderingTemplates用來渲染列表形式或字段) 使用註冊/的RenderingTemplate內
<SharePoint:RenderingTemplate ID="NewRelatedListItem" runat="server">
<Template>
<span id="part1">
<SharePoint:ScriptLink Name="SPFormFieldAssistant.js" Localizable="false" />
...
</span>
...
</Template>
</SharePoint:RenderingTemplate>
它不能做 - 它沒有包括頭部區域的腳本,但...:
Source http://img62.imageshack.us/img62/9826/ss20100324092808.png
我的代碼有問題嗎?儘管腳本IS位於Layouts文件夾,並且我使用Reflector檢查它是否使用Layouts文件夾(如果Localizable ='False')。
我不希望這個腳本被加載到每一個頁面,但只能用於表單。
關於如何實現這一點的任何想法?
我的想法是不工作...
我的第一個想法是添加腳本編程與<% this.Page.ClientScript.RegisterClientScriptInclude("spffa", "/_layouts/SPFormFieldAssistant.js") %>
,但它不工作,因爲該代碼評價是發生在Render方法和我讀在哪裏你不能在Render方法中註冊客戶端腳本,但通常在PreRender方法中完成。可惜
我的第二個想法,仍然沒有工作
我以爲我會創建被覆蓋的prerender方法中的自定義用戶控件命名RegisterClientScript和那裏,我可以添加腳本,我需要與客戶端腳本管理器(this.Page.ClientScript ...),但與SharePoint:ScriptLink一樣,我的控件也以文本形式呈現! my control as text http://img693.imageshack.us/img693/3738/ss20100324115826.png
我該如何克服這一點,以及抓住哪裏?
runat = where?應該指定,如果你需要服務器端控件 – naivists 2010-03-24 15:53:36
這是真的,謝謝。我的錯誤:( – 2010-03-25 11:07:18