Sharepoint学习笔记—Ribbon系列-- 9.如何让用户定义的Ribbon引用外部Javascript文件

  在使用Sharepoint2010的Ribboon编程的领域内,我们必然要遇到如何编写Ribbon内控件的Javascript代码。
  下面是Ribbon定义的一段常见代码:

  < CommandUIHandlers >
    < CommandUIHandler  Command =”Ribbon.MyTab.MyGroup.Button_CMD”  CommandAction =”javascript:alert('RibbonJs  Invoke!');'  />
   </ CommandUIHandlers >

  这段代码中的CommandAction中定义了此Ribbon控件将要执行的Javascript功能。问题是,在实际应用中,我们的Javascript远不只一个alert函数这么简单,而我们又不可能在这个Ribbon的定义中嵌入非常复杂的大量Javascript代码,我们需要做的应该像下面的代码定义段一样:

  < CommandUIHandlers >
    < CommandUIHandler  Command =”Ribbon.MyTab.MyGroup.Button_CMD”  CommandAction =”javascript:RibbonButtonHandler();”  />
   </ CommandUIHandlers >

  在CommandAction中潜入一个Javascript的Function,这个Funcation是在一个外部Javascript文件中定义的。所以接下来的问题是,如何让Ribbon的定义段知道它该使用哪一个外部Javascript文件引用?
  好在Sharepoint中提供了这样一个途径,我们只需要加入下面的代码就能解决这个问题。

< CustomAction  Id =”Ribbon.Library.Actions.Scripts”
  
Location  ="ScriptLink"   ScriptSrc ="/_layouts/SharePointProject1/RibbonActions.js"   />

此代码的ScriptSrc指明了外部需要引用的Javascript文件位置以及文件名,当然我们需要在/_layouts/SharepointProjects1/目录下创建这个名为RibbonActions.js的javascript代码文件。
  所以相对完整的代码应该如下 : 

< CommandUIHandlers >
    < CommandUIHandler  Command =”Ribbon.MyTab.MyGroup.Button_CMD”  CommandAction =”javascript:RibbonButtonHandler();”  />
   </ CommandUIHandlers >
< Elements  xmlns =”http://schemas.microsoft.com/sharepoint/” >
   < CustomAction
    
Id =”Ribbon.MyTab”
    
Title =”Ribbon  Sample”
    RegistrationType
=”List”
    
RegistrationId =”100″
    
Location =”CommandUI.Ribbon.ListView” >
  < CommandUIExtension >
   < CommandUIDefinitions ></ CommandUIDefinitions >
   < CommandUIHandlers >
    < CommandUIHandler  Command =”Ribbon.MyTab.MyGroup.Button_CMD”  CommandAction =”javascript:RibbonButtonHandler();”  />
   </ CommandUIHandlers >
  </ CommandUIExtension >
  </ CustomAction >
 
< CustomAction  Id =”Ribbon.Library.Actions.Scripts”
  
Location  =”ScriptLink”
  
ScriptSrc =”/_layouts/SharePointProject1/RibbonActions.js”  />
  </ Elements >

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值