问题描述
包括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