使用 javascript .link() 方法打开弹出窗口

Open popup with javascript .link() method

我正在使用 ag-grid 来显示 JSON 数据。如果值保存在嵌套对象中,我必须使用 valueGetter(网格 API)映射到该值。值 getter returns 每行一个值,网格将正确的值分配给正确的行。问题是我需要每个值都是一个 hyperlink,它会打开一个弹出窗口。我有一个使用 window.open 的 openPopup() 方法。但是 AFAIK 我被迫使用 javascripts .link() 方法,它只需要一个 URL 字符串所以我不知道如何在新的 [=] 中打开 link 29=].

值getter:

function isinValueGetterBox(params) {
    if (params.node.group) { return null; }
    var isinValueBox = "";

    for (var i = 0; i < params.data.security.identifiers.length; i++) {
        if (params.data.security.identifiers[i].type === "isin") {
            isinValueBox = params.data.security.identifiers[i].value;
        }
    }
    return isinValueBox.link("views/Popup1.html");
}

弹出方法:

popup1 = function () {
    var popup1 = window.open("views/Popup1.html", "_blank",
                        "height = 400, width = 700");
}

发现在创建字符串时可以在 javascript 中使用 HTML,所以我简单地附加了一个带有 onclick<a> 标签来调用我的 window.open方法。

新的 valueGetter 方法:

 function isinValueGetterBox(params) {
    if (params.node.group) { return null; }
    var isinValueBox = "";

    for (var i = 0; i < params.data.security.identifiers.length; i++) {
        if (params.data.security.identifiers[i].type === "isin") {
            isinValueBox = ('<a href = "#" onclick = popup1()>' + params.data.security.identifiers[i].value + '</a>');
        }
    }
    return isinValueBox;
}