我们可能会产生这样的需求,如何在Sharepoint Page中加入jQuery。我们知道,Sharepoint所有的"开箱即用"的主页(如:v4.master, default.master, minimal.master, and nightandday.master)中都包含有如下的HTML标识

<SharePoint:DelegateControl runat="server" 
          ControlId="AdditionalPageHead" 
          AllowMultipleControls="true"/> 

此标识一般位于这些主页下定义代码的头部位置。
   从代码可以看出,它属于Delegate Control,Sharepoint的Delegate Control向用户提供了一个框架,此框架告知ASP.NET去寻找那些注册了的Delegate Controls,并在调用这些Delegate Controls的LoadControl方法时,加载你自己编写的用户自定义控件。 而上面提到的那AdditionalPageHead就是一个Delegate Control,它可以被用来引用我们的Script。
下面讲述我们的操作步骤。
一、创建用户控件
 创建一个Farm级别的新项目。 在此项目中,添加一个新Item (Add New Item),此新Item是一个用户自定义控件,我们命名为jQueryControl.ascx

在此控件的定义代码中加入

<script type="text/javascript"
    src="/_layouts/SPJquery/jquery-1.5.2.min.js"/>
或 //因为前者可能会让Sharepoint产生ScriptResource.axd的Object Required错误,遇到此报错,把此段申明改成下面这段表达形式就行了
<script type="text/javascript" 
    src="/_layouts/SPJquery/jquery-1.5.2.min.js"><script/> 
 

结果如下图

二、创建Feature
 创建Feature的目的是用来把我们上面开发的用户自定义控件注册为Delegate Control。
 所以,在上面的项目中新添加一个Feature,把此Feature的Scope设置为Web,并添加对此Feature的标题(Title)和描述(Description)。Scrope设为Web就意味着此Website的所有Page都会加载此Feature注册的jQuery。如果高为Site,就意味着此网站所在的网站集的所有Page都会加载你的Feature注册的jQuery,而设为Farm就意味着整个Farm的所有Page都会加载你的Feature注册的jQuery,设置为WebApplication则意味着所有使用此WebApplication的Pages都会加载你的Feature注册的jQuery。

如下图:

然后再添加一个新的 “Empty Element”,命名为“jQueryElement”.

Elements.xml的代码如下

<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">  
  <Control Id="AdditionalPageHead" 
           Sequence="90"             
           ControlSrc="~/_CONTROLTEMPLATES/SPJQuery/jQueryControl.ascx" />
</Elements> 

 
三、把jQuery Script文件部署到Sharepoint的Layouts目录
我们虽然在前面的用户自定义控件中引用到了jQuery文件,但此文件还并不存在,所以我们需要在Sharepoint中添加它。
 右击你的项目,选择添加 SharePoint “Layouts” Mapped Fold

er.

在此Folder中,添加jQuery javascript文件,结果如图 
 
 四、测试结果
 在 Visual Studio 2010中使用F5来部署和开始调试你的Project,调试器(debugger)会自动附加到Sharepoint页面上,并且你会看到调试器中加载的Scripts,在里面你会看到你想加载的jQuery.js

转载于:https://www.cnblogs.com/wsdj-ITtech/archive/2012/01/14/2264851.html

Sharepoint学习笔记—Delegate Control--在Sharepoint页面添加jQuery相关推荐

  1. Sharepoint学习笔记 –架构系列—12 Sharepoint的客户端对象模型(Client Object Model)

    前面过了一下Sharepoint的服务器端对象模型,接下来就让我们大致看看Sharepoint的客户端对象模型(Client Object Model: Client OM). 首先需要了解的就是Sh ...

  2. Sharepoint学习笔记 –架构系列—10 Sharepoint的服务器端对象模型(Server Object Model) 2.内容层次结构

    Sharepoint的内容层次结构(Content Hierarchy)包括表示可发布数据项(publishable items),如列表项的类,还包括表示嵌套的数据容器(nested contain ...

  3. Sharepoint学习笔记 –架构系列—09 Sharepoint的服务器端对象模型(Server Object Model) 1.物理对象层次结构

    关于Sharepoint的服务器端对象模型的内容很庞大很繁杂,而事实上,我们在这里只把最关键的对象梳理一下,我们会从三个体系来大致描述它们. 这三个体系分别是: 1.物理对象层次结构(Physical ...

  4. Sharepoint学习笔记 –架构系列—11 Sharepoint的服务器端对象模型(Server Object Model) 3.服务层次结构

    前面我们看了一下Sharepoint服务器对象模型的物理对象层次(Physical Objects Hierarchy)和对象内容层次(Content Hierarchy)中的相关类,这里来看看服务层 ...

  5. Sharepoint学习笔记—ECMAScript对象模型系列-- 7、获取和修改List的Lookup字段

    在前面我们提到了如何使用ECMAscript对象模型来操作普通的List Items,但如果我们操作的List包含有Lookup字段,那么我们又该怎么做呢? 首先参考此文搭建我们本文的测试环境 Sha ...

  6. Sharepoint学习笔记---Linq to Sharepoint--查询语法

    Linq to sharepoint的引入的确给我们操作Sharepoint带来了便利,首先就体现在对Sharepoint 的查询优势上.它基本可以照搬Linq to SQL的查询语法,这就大大保护了 ...

  7. Sharepoint学习笔记---Sandbox Solution-- Full Trust Proxy--开发实例之(2、在Webpart中访问Full Trust Proxy)...

    上一篇Sharepoint学习笔记---Sandbox Solution-- Full Trust Proxy--开发实例之(1.创建一个能访问DataBase的Full Trust Proxy), ...

  8. Sharepoint学习笔记—Site Definition系列-- 2、创建Content Type

    Sharepoint本身就是一个丰富的大容器,里面存储的所有信息我们可以称其为"内容(Content)",为了便于管理这些Conent,按照人类的正常逻辑就必然想到的是对此进行&q ...

  9. Sharepoint学习笔记---如何在Sharepoint2010网站中整合Crystal Report水晶报表(显示数据 二)...

    在Sharepoint学习笔记---如何在Sharepoint2010网站中整合Crystal Report水晶报表(显示数据一)中,解释了如何把Crystal Report整合到Sharepoint ...

最新文章

  1. 获取在线APP的素材图片
  2. error: No resource identifier found for attribute ‘backIcon’ in package
  3. 阿里2019实习内推,五轮技术面+一轮HR面,Java岗面经
  4. foxmail使用技巧
  5. ERROR: Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: ‘
  6. docker-compose单机容器编排工具
  7. HDU - 2296 Ring(AC自动机+dp)
  8. Android之React Native 中组件的生命周期
  9. 软件构造学习笔记-第三周
  10. python3 自动打包部署war包
  11. 2020年数模美赛参赛心得总结
  12. 国际科学数据服务平台nbsp;-nbsp;csdb
  13. 寻路大数据:海量数据与大规模分析
  14. JavaScript基础--DOM部分02--李南江
  15. U3D[02.21]
  16. Win7 每天定时关机
  17. 又一个充电宝改装,经验升级版。
  18. CSS3 图片旋转特效
  19. 关于贯彻《财政部 税务总局关于调整增值税税率的通知》的通知 〔2018〕405
  20. HED边缘检测:Holistically-nested Edge Detection 解读

热门文章

  1. html+css面试题 行内元素padding和margin
  2. 转]最长递增子序列问题的求解
  3. Azure 中国篇之网络服务—(2)Azure虚拟机使用公网ip(PIP)
  4. linux卸载openJDK
  5. WebService服务发布与使用(JDK自带WebService)
  6. mongodb的体系
  7. Multi thread: std::promise
  8. joomla第一单元第四节K2类别设置和第五节项目视图选项
  9. 死锁(Deadlock)
  10. 20个使用柔和的色调的优秀网站设计示例