Table Panel selecting row link with keyboard <Enter> key not working in 12.4

  • What Grafana version and what operating system are you using?
    12.4 - table JSON “pluginVersion”: “12.4.3”

  • What are you trying to achieve?
    Trying to select a link in a table using the keyboard “Enter” key, similar to left-clicking the link.

  • How are you trying to achieve it?
    Tabbing through the table list works fine but when hitting “Enter” key nothing happens.

  • What happened?
    No notable change.

  • What did you expect to happen?
    The link configured in that table row would be selected.

  • Can you copy/paste the configuration(s) that you are having problems with?
    Yes, see below (data query and some other sensitive information removed).

  • Did you receive any errors in the Grafana UI or in related logs? If so, please tell us exactly what they were.
    No errors.

  • Did you follow any online instructions? If so, what is the URL?

{
“panels”: [
{
“id”: 2,
“type”: “table”,
“title”: “Reproduced with embedded data”,
“gridPos”: {
“h”: 13,
“w”: 15,
“x”: 0,
“y”: 0
},
“fieldConfig”: {
“defaults”: {
“custom”: {
“align”: “auto”,
“footer”: {
“reducers”:
},
“cellOptions”: {
“type”: “color-text”
},
“inspect”: false,
“filterable”: true
},
“mappings”: ,
“thresholds”: {
“mode”: “absolute”,
“steps”: [
{
“color”: “blue”,
“value”: null
}
]
},
“color”: {
“mode”: “thresholds”
},
“links”: [
{
“targetBlank”: false,
“title”: “stations”,
“url”: “/d/${__dashboard.uid}/data-link-with-dashboard-variable?var-selectedStation=${__value.text}”
}
]
},
“overrides”:
},
“pluginVersion”: “12.4.3”,
“targets”: [
{
“refId”: “A”,
“datasource”: {
“type”: “grafana”,
“uid”: “grafana”
},
“queryType”: “snapshot”,
“snapshot”: [
{
“schema”: {
“refId”: “A”,
“meta”: {
“typeVersion”: [
0,
0
],
“executedQueryString”: “”
},
“fields”: [
{
“name”: “octhcqs”,
“type”: “string”,
“typeInfo”: {
“frame”: “string”,
“nullable”: true
},
“config”: {}
}
]
},
“data”: {
“values”: [
[
“TOCE_FgxlprCmrah”,
“TOCE_MmtqBoqpb”,
“TOCE_PqijIL”,
“TOCE_Smfcxmhmo”,
“Tnvzi_Wjvlelzyzr”,
“URB_FfievxqtAR”
]
]
}
}
]
}
],
“datasource”: {
“type”: “grafana”,
“uid”: “grafana”
},
“options”: {
“showHeader”: false,
“cellHeight”: “sm”
}
},
{
“gridPos”: {
“h”: 7,
“w”: 9,
“x”: 15,
“y”: 0
},
“id”: 5,
“options”: {
“content”: "\n \n Panel\n table @ 12.4.3\n \n \n Queries\n A[grafana-postgresql-datasource]\n \n \n Data 1 frames, 1 fields, 125 rows \n \n \n Grafana\n Grafana v12.4.3 (unknown) // Pro\n \n ",
“mode”: “html”
},
“title”: “Debug info”,
“type”: “text”
},
{
“id”: 6,
“title”: “Original Panel JSON”,
“type”: “text”,
“gridPos”: {
“h”: 13,
“w”: 9,
“x”: 15,
“y”: 7
},
“options”: {
“content”: “{\n “id”: 23,\n “type”: “table”,\n “title”: “”,\n “gridPos”: {\n “x”: 0,\n “y”: 4,\n “h”: 15,\n “w”: 3\n },\n “fieldConfig”: {\n “defaults”: {\n “custom”: {\n “align”: “auto”,\n “footer”: {\n “reducers”: \n },\n “cellOptions”: {\n “type”: “color-text”\n },\n “inspect”: false,\n “filterable”: true\n },\n “mappings”: ,\n “thresholds”: {\n “mode”: “absolute”,\n “steps”: [\n {\n “color”: “blue”,\n “value”: null\n }\n ]\n },\n “color”: {\n “mode”: “thresholds”\n },\n “links”: [\n {\n “targetBlank”: false,\n “title”: “stations”,\n “url”: “/d/${__dashboard.uid}/data-link-with-dashboard-variable?var-selectedStation=${__value.text}”\n }\n ]\n },\n “overrides”: \n },\n “pluginVersion”: “12.4.3”,\n “targets”: [\n {\n “datasource”: {\n “type”: “grafana-postgresql-datasource”,\n “uid”: “”\n },\n “editorMode”: “code”,\n “format”: “table”,\n “refId”: “A”,\n “sql”: {\n “columns”: [\n {\n “parameters”: ,\n “type”: “function”\n }\n ],\n “groupBy”: [\n {\n “property”: {\n “type”: “string”\n },\n “type”: “groupBy”\n }\n ],\n “limit”: 50\n }\n }\n ],\n “datasource”: {\n “type”: “grafana-postgresql-datasource”,\n “uid”: “bfjzemzr5lurkd”\n },\n “options”: {\n “showHeader”: false,\n “cellHeight”: “sm”\n }\n}”,
“mode”: “code”,
“code”: {
“language”: “json”,
“showLineNumbers”: true,
“showMiniMap”: true
}
}
},
{
“id”: 3,
“title”: “Data from panel above”,
“type”: “table”,
“datasource”: {
“type”: “datasource”,
“uid”: “-- Dashboard --”
},
“gridPos”: {
“h”: 7,
“w”: 15,
“x”: 0,
“y”: 13
},
“options”: {
“showTypeIcons”: true
},
“targets”: [
{
“datasource”: {
“type”: “datasource”,
“uid”: “-- Dashboard --”
},
“panelId”: 2,
“withTransforms”: true,
“refId”: “A”
}
]
}
],
“schemaVersion”: 37,
“title”: “Debug: // 2026-04-27 12:56:19”,
“tags”: [
“debug”,
“debug-table”
],
“time”: {
“from”: “2026-04-24T18:46:35.672Z”,
“to”: “2026-04-27T18:46:35.672Z”
}
}

Hello @flaherts welcome to grafana community
Yes your data link is correct , in grafana Tab+Enter not working in table visualization , if you want this use text visualization , tab+Enter work here.
for table visualiztaion mouse click work perfectly and open targeted dashboard.
Thanks

Hello @infofcc3
Thank you for the response and the suggestion.

I looked into the text visualization but it doesn’t provide us the ability to have dynamic content rendered from a query. I should have included that as part of our use case.

Functionally, the table view combined with an associated data link provides a way to update the station variable and render an updated visualization:

“links”: [
{
“targetBlank”: false,
“title”: “stations”,
“url”: “/d/${__dashboard.uid}/data-link-with-dashboard-variable?var-selectedStation=${__value.text}”
}

Since our users check over a 100 stations daily using the same visualization, we need provide a way to quickly cycle through the various stations. Being able to stay on the keyboard and use the tab / enter keyboard combination proved an effective and efficient user experience.

Is there a way I can put in a request/ticket to restore this feature in future versions?

Kind regards,
flaherts

So this is a regression? This user to work in the past?

The tab/enter combo is working in our 10.4 stack.