【问题标题】:jquery in sharepoint 2013 web part [closed]sharepoint 2013 web 部件中的 jquery [关闭]
【发布时间】:2014-05-31 19:40:18
【问题描述】:

我正在尝试将 Jquery 添加到 SharePoint 2013 Visual webpart。我已将脚本文件放在 layouts 文件夹中,并且可以在我的 ascx 中引用它们,但它无法识别任何 jquery 语法。

<script src="../_layouts/15/jquery-2.1.0.min.js"></script>
<script src="../_layouts/15/jquery-ui-1.10.4.min.js"></script>


<script>
    $(function () { $("#accordian").accordion(); });//not recognized
</script>

任何建议将不胜感激。

谢谢

编辑

当我尝试运行它时,我得到错误:'jQuery' is undefined。当我调试时,它在 UI 脚本文件中,所以看起来它正在加载 jQuery-UI 而不是主 jQuery 脚本。 (也许?)

编辑

实际问题原来是我的 jQuery 文件格式错误。 @Moderator - 请删除

【问题讨论】:

  • 控制台抛出的错误是什么?

标签: jquery sharepoint sharepoint-2013 web-parts ascx


【解决方案1】:

您可能希望将 jQuery 文件放在 Layouts 中的特定文件夹中,以免弄乱 Layouts 目录。

然后您可以像这样简单地引用您的 jQuery 文件:

<SharePoint:Scriptlink ID="jQuery" runat="server" Name="MyWebPart/jquery-2.1.0.min.js" Language="javascript" />
<SharePoint:Scriptlink ID="jQueryUI" runat="server" Name="MyWebPart/jquery-ui-1.10.4.min.js" Language="javascript" />

因此您的文件将位于服务器上的以下位置:

C:\Program Files\Common Files\microsoft shared\Web Server Extensions\15\TEMPLATE\LAYOUTS\MyWebPart\jquery-2.1.0.min.js

C:\Program Files\Common Files\microsoft shared\Web Server Extensions\15\TEMPLATE\LAYOUTS\MyWebPart\jquery-ui-1.10.4.min.js

【讨论】:

    【解决方案2】:

    这样做

    <link href="/_layouts/15/SBBJobBox/css/SBB/jquery-ui-1.10.3.custom.css" rel="stylesheet" />
    <script src="/_layouts/15/SBBJobBox/js/jquery-1.9.1.js"></script>
    <script src="/_layouts/15/SBBJobBox/js/jquery-ui-1.10.3.custom.min.js"></script>
    

    【讨论】:

    • 这是直接来自我的项目。当然,您将使用您的 jQ 版本。不知道为什么 2013 年比 2010 年变了。
    • 您是说我的问题出在 / 前面的 .. 还是我的 jquery 文件不在布局的子文件夹中?两者都不适合我。
    • the .. 出于某种原因 .. 让 VS 开心但不是 SP。
    【解决方案3】:

    如果控制台在 sharepoint 中显示上述消息。而不是 $(document).ready() 函数 使用 _spBodyOnLoadFunctionNames.push();

    _spBodyOnLoadFunctionNames.push("myFunctionName");//this function called during page load
    function myCustomName(){
     alert('a');}
    

    也可能是这样的

    var j = jQuery.noConflict();
    ExecuteOrDelayUntilScriptLoaded(run, "sp.js");
    function run(){j('#selector').method();}
    

    【讨论】:

      猜你喜欢
      • 2020-05-29
      • 1970-01-01
      • 2016-09-06
      • 2016-06-09
      • 2014-01-07
      • 1970-01-01
      • 2012-03-10
      • 1970-01-01
      • 2010-09-13
      相关资源
      最近更新 更多