Java脚本新手在这里。
我有这个名为“处理程序”的 Sisense 函数,它将使列中的所有值成为超链接:
widget.transformPivot({
type: ['member'],
rows: [
{
title: 'Product User',
}
],
}, handler);
我有另一个函数,它构建一个新的 url 并用构造的 url 替换上面提到的同一列中的值(其细节对于这个问题并不重要):
function createLinkHTML(cell, tag, inner){
//setup regex to match relevant parts of url and get match
let prePatt = new RegExp(".*:\/\/.*?\/");
let preURL = String(prePatt.exec(window.location.href));
if (preURL.includes("analytics1")){
preURL = preURL.replace('https://analytics1.foo.com','https://www.newfoo.com');
//console.log(preURL);
}
if (inner.length > 0){
console.log(inner[0].innerText);
var htmlLink = `<a href="${preURL}/users/users/details/${inner[0].innerText}" target="_blank" >` + 'Go to User Profile' + '</a>';//+ linkArr[0] + URLParams
$(tag, cell).html(htmlLink);
}
}
要调用 Sisense 函数“处理程序”,我们使用以下代码:
function handler(metadata, cell) {
cell.content = '<a>' + cell.content + '</a>';
}
要调用函数“createLinkHTML”,我们使用:
widget.on('ready', function(_, __){
addUserLink(element, widget);
});
我试图了解如何组合这两个函数,以便我可以使用“createLinkHTML”将列中的值替换为 url,然后使用“handler”将该列中的新 url 设置为超链接。
如果完全是新手,请原谅这个问题。我似乎无法在这里找到对我有帮助的信息。我刚刚注册了一个 javascript 课程来学习基础知识。但我需要尽快解决这个问题。谢谢。