jquery - SPServices 将无法加载

标签 jquery sharepoint spservices

在我的页面标题中,我有:

<script>
function insureSPServices(callbackFunction)
{
  if($().SPServices == null)
  {
     jQuery.getScript("./scripts/jquery.SPServices-2014.01.js", callbackFunction);
  } else {
      callbackFunction.call(null, "Already Loaded");
  }
}
function populate()
{
alert("SPServices loaded? " + (jQuery.SPServices == undefined ? "NO!!!" : "YES."));
}
</script>
<script type="text/javascript" language="javascript">
  $(document).ready(function()
  {
    alert("jQuery");
    alert("!" + $().SPServices.SPGetCurrentSite() + "!");
alert("jQuery loaded? " + (jQuery == undefined ? "NO!!!" : "YES."));
alert("SPServices loaded? " + (jQuery.SPServices == undefined ? "NO!!!" : "YES."
));
    insureSPServices(populate());
  });
</script>

我得到: jQuery 是 SP服务不!!! SPServices 不!!!

注释: 两个脚本路径都是合法的。

SPServices 脚本是从以下位置下载的: http://spservices.codeplex.com/downloads/get/786994

检查/初始化逻辑来自这里: http://devspoint.wordpress.com/2011/01/07/quick-way-to-load-spservices/

感谢所有帮助。

最佳答案

可能存在几个问题:

  1. 路径可能无法正确解析(有时相对 URL 在 SharePoint 上下文中似乎无法正常工作)
  2. 当在 Javascript 中使用 jQuery 时,例如SharePoint Web 部件在使用 SP 服务之前尝试使用 jQuery.noConflict()。在大多数情况下,我在使用 $ 或 jQuery 时遇到问题,因为 SharePoint 中已经加载了 JQuery。
  3. 在 SharePoint 中使用 javascript $(document).ready 可能会导致问题,因为这实际上并不意味着所有内容均已加载。您可以尝试改用_spBodyOnLoadFunctionNames.push("myfunction")。

关于jquery - SPServices 将无法加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23636019/

相关文章:

css - 使用自定义 css 仅针对只读(非管理员)从功能区隐藏一些 Sharepoint 元素

javascript - 从 Promise 返回对象

JQuery UI Accordion 动态创建

javascript - Javascript/PHP 可以检测插入的数据吗?

c# - 在我无法显式调用 Dispose() 的语句中间创建的 IDisposable 对象会怎样?

javascript - SharePoint Web 部件上的 jQuery.hover 不起作用

javascript - 排序数组超链接

javascript - 了解 setInterval 中剩余的时间并将其应用于计时器的暂停和恢复

javascript - 更改类别页面上每个帖子的摘录

javascript - 函数在运行内部操作之前返回值