0

我在 SharePoint 中有一个包含 URL 列的外部列表。URL 列是 SQL Server 中的计算字段,因此整个 URL 已经存在。我需要这个字段来超链接,我一直在尝试使用 JSLink 来实现。JavaScript 会是什么样子?

例如,如果我的字段是...

名字 | 姓氏 | 个人资料网址

我如何将配置文件 URL 字段中的 URL 获取到超链接?

我整个早上都在寻找解决方案,但没有任何运气。我不熟悉 JavaScript,所以我使用的代码是从我一直在阅读的帖子中拼凑而成的。我已经确定我的 JSLink 地址是正确的。

~site/SiteAssets/myCode.js

我尝试了不同的代码变体。我最新的是这样的:

(function () {  

    var profUrlField = {};  
    profUrlField.Templates = {};  
    profUrlField.Templates.Fields = {  
        "Profile_X0020_URL": { 
        "View": function (ctx) {
                var urlField = ctx.CurrentItem[ctx.CurrentFieldSchema["Profile_X0020_URL"]];  

            return "<a href='" + urlField + "'>" + urlField + "</a>";  
            }
        }  
    };  
    SPClientTemplates.TemplateManager.RegisterTemplateOverrides(profileUrlField);  
})();

将我的 JSLink 应用到我的 Web 部件后,我重新加载了页面,但没有任何反应。没有错误但没有链接。

我也不确定如何引用该列。在 SQL Server 中,它是 PROFILE_URL,但在 SharePoint 列表标题中,它是配置文件 URL。

4

1 回答 1

0

修改如下代码以检查它是否有效。

(function () {  
    var profUrlField = {};  
    profUrlField.Templates = {};  
    profUrlField.Templates.Fields = {  
        "PROFILE_URL": { 
            "View": function (ctx) {
                var urlField = ctx.CurrentItem[ctx.CurrentFieldSchema.Name];  
                return "<a href='" + urlField + "'>" + urlField + "</a>";
            }
        }  
    };  
    SPClientTemplates.TemplateManager.RegisterTemplateOverrides(profileUrlField);  
})();
于 2019-08-27T01:52:16.033 回答