39594035d23df2f5465f6661eac3fe9a6384622c
max
  Mon Sep 15 10:46:59 2025 -0700
fixing bug in previous commit, refs #36254

diff --git src/lib/cheapcgi.c src/lib/cheapcgi.c
index bb5a69a829f..1e0cccf6ba5 100644
--- src/lib/cheapcgi.c
+++ src/lib/cheapcgi.c
@@ -197,31 +197,31 @@
 checkValidEvent(eventName);
 jsInlineF("document.getElementById('%s').addEventListener('%s', %s);\n", idText, eventName, jsText);
 }
 
 void jsOnEventById(char *eventName, char *idText, char *jsText)
 /* Add js mapping for inline event */
 {
 checkValidEvent(eventName);
 jsInlineF("document.getElementById('%s').on%s = function(event) {if (!event) {event=window.event}; %s};\n", idText, eventName, jsText);
 }
 
 void jsOnEventBySelector(char *query, char *eventName, char *jsText)
 /* Add js mapping for inline event given a query selector, e.g. '.className' */
 {
 checkValidEvent(eventName);
-jsInlineF("document.querySelector('%s').addEventListener( '%s', function(event) { %s });\n", query, eventName, jsText);
+jsInlineF("document.querySelectorAll('%s').forEach(function (el) { el.addEventListener( '%s', function(event) { %s })});\n", query, eventName, jsText);
 }
 
 
 void jsOnEventByIdF(char *eventName, char *idText, char *format, ...)
 /* Add js mapping for inline event with printf formatting */
 {
 checkValidEvent(eventName);
 jsInlineF("document.getElementById('%s').on%s = function(event) {if (!event) {event=window.event}; ", idText, eventName);
 va_list args;
 va_start(args, format);
 dyStringVaPrintf(jsInlineLines, format, args);
 va_end(args);
 jsInlineF("};\n");
 }