Как изменить значения по умолчанию при добавлении ссылки Sharepoint 2013 - PullRequest
0 голосов
/ 28 февраля 2019

Можно ли на странице добавления ссылки изменить значения по умолчанию, такие как заголовок, адрес, показать эти ссылки, используя параметры URL-адреса?Согласно this , это кажется возможным в sharepoint2010.Кто-нибудь знает, работает ли он в 2013 году ??

Если нет, можно ли добавить ссылку по почте REST API ??

1 Ответ

0 голосов
/ 05 апреля 2019

Эту проблему можно решить, выполнив следующие действия.

  1. Добавьте настраиваемое действие.Просто выполните шаги здесь .

    В моем случае код такой, как показано ниже

    SP.SOD.executeFunc ("callout.js", "Callout", function () {var itemCtx= {}; itemCtx.Templates = {}; itemCtx.BaseViewID = 'Callout'; // Определить тип шаблона списка itemCtx.ListTemplateType = 101; itemCtx.Templates.Footer = function (itemCtx) {// контекст, функция настраиваемого действия, показать меню ECB (логическое) return 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

...