添加链接Sharepoint 2013时如何更改默认值

时间:2019-02-28 07:16:16

标签: sharepoint sharepoint-2013

在“添加链接”页面中,是否可以通过使用URL参数更改默认值,例如标题,地址,显示这些链接? 根据{{​​3}},在sharepoint2010中似乎有可能。有谁知道它在2013年是否可行?

如果没有,是否可以通过发布REST API添加链接?

1 个答案:

答案 0 :(得分:0)

此问题可以通过以下步骤解决。

  1. 添加自定义操作。只需按照步骤here

    在我的情况下,代码如下

        SP.SOD.executeFunc(“ callout.js”,“ Callout”,function(){         var itemCtx = {};         itemCtx.Templates = {};         itemCtx.BaseViewID ='标注';         //定义列表模板类型         itemCtx.ListTemplateType = 101;         itemCtx.Templates.Footer = function(itemCtx){             //上下文,自定义操作功能,显示ECB菜单(布尔)             返回CalloutRenderFooterTemplate(itemCtx,AddCustomAction,true);         };         SPClientTemplates.TemplateManager.RegisterTemplateOverrides(itemCtx);     });
    function AddCustomAction(renderCtx, calloutActionMenu) {
        // Add your custom action
        calloutActionMenu.addAction(new CalloutAction({
            text: "FAVORITE",
            // tooltip: 'This is your custom action',
            onClickCallback: function() {
                CreateCustomNewQuickLink(renderCtx.CurrentItem.FileLeafRef, renderCtx.CurrentItem.FileRef);
    
            }
        }));
    
        // Show the default document library actions
        CalloutOnPostRenderTemplate(renderCtx, calloutActionMenu);
    }
    
    function CreateCustomNewQuickLink(title, url) {
        var urlAddress = $(location).attr('protocol') + "//" + $(location).attr('host') + '/_Layouts/quicklinksdialogformTEST.aspx?Mode=Link' +
            '&title=' + encodeURIComponent(title) +
            '&url=' + encodeURIComponent(url);
        ShowNewQuicklinkPopup(urlAddress, PageRefreshOnDialogClose);
    }
    
  2. 创建一个新的添加链接页面,该页面是从“ quicklinksdialogform.aspx”复制而来的。我添加了一些JavaScript,如下所示。

    $(init)

    function init() {
        var args = new Object();
        args = GetUrlParms();
        if (args["title"] != undefined) {
            $(".ms-long")[0].value = decodeURIComponent(args["title"]);
        }
        if (args["url"] != undefined) {
            $(".ms-long")[1].value = decodeURIComponent(args["url"]);
        }
    }
    
    function GetUrlParms() {
        var args = new Object();
        var query = location.search.substring(1);
        var pairs = query.split("&");
        for (var i = 0; i < pairs.length; i++) {
            var pos = pairs[i].indexOf('=');
            if (pos == -1) continue;
            var argname = pairs[i].substring(0, pos);
            var value = pairs[i].substring(pos + 1);
            args[argname] = unescape(value);
        }
        return args;
    }
    
  3. 它的工作原理如下

enter image description here enter image description here