使用 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;
}
我正在使用 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;
}