gpt4 book ai didi

datagrid - 如何为 extJS Grid 添加行超链接?

转载 作者:行者123 更新时间:2023-12-04 13:07:37 25 4
gpt4 key购买 nike

有人可以说明如何在 ExtJS 的特定列的单元格中呈现超链接吗?
我已经尝试将该列绑定(bind)到我的 JS 中的渲染函数,我从中发回 html:

<a href="ControllerName/viewName">SELECT</a>

但是,有了这个,问题是,一旦我通过链接点击 Controller ,导航就成功了,但随后对数据网格的导航只显示空记录。

我已经检查过,通过 Spring MVC Controller 成功地从数据库中获取了记录。

请注意,只有当我使用 extJS 网格中的行超链接导航离开网格时,才会发生这种情况。如果我来到网格,并在其他地方导航并再次返回网格,则数据显示正常。
仅在使用一个/任何单元格中呈现的超链接导航离开网格的情况下才会出现此问题。

谢谢你的帮助!

最佳答案

这适用于 ExtJS 4 和 5。

使用 renderer使内容看起来像一个链接:

renderer: function (value) {
return '<a href="#">'+value+'</a>';
}

然后使用未记录的、动态生成的 View事件 cellclick处理点击:
viewConfig: {
listeners: {
cellclick: function (view, cell, cellIndex, record, row, rowIndex, e) {

var linkClicked = (e.target.tagName == 'A');
var clickedDataIndex =
view.panel.headerCt.getHeaderAtIndex(cellIndex).dataIndex;

if (linkClicked && clickedDataIndex == '...') {
alert(record.get('id'));
}
}
}
}

关于datagrid - 如何为 extJS Grid 添加行超链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3337070/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com