9a1687b6341af06ee8e0746a9a502ba09cee8284
lrnassar
Tue Apr 7 16:11:57 2026 -0700
Add missing form labels and aria-labels across hgTables pages and main site search. refs #37343
Main page search bar (index.html): aria-label on search input.
hgTables main page (mainPage.c): aria-label on Galaxy/GREAT checkboxes,
fix Position label to target radio button instead of text input, aria-label
on position text input.
hgTables user regions (userRegions.c): aria-label on paste textarea and
file upload input.
hgTables filter page (filterFields.c): aria-label on all per-field filter
dropdowns and text inputs across string, numeric, integer, and enum field types.
hgTables intersect page (intersect.c): label elements on all 6 radio buttons
and 2 complement checkboxes, aria-label on threshold text inputs.
diff --git src/hg/hgTables/mainPage.c src/hg/hgTables/mainPage.c
index fa9488268e2..7901c648c7f 100644
--- src/hg/hgTables/mainPage.c
+++ src/hg/hgTables/mainPage.c
@@ -436,35 +436,37 @@
}
if (!cfgOptionBooleanDefault("hgta.disableSendOutput", FALSE))
{
hPrintf(" Send output to ");
struct dyString *dy = dyStringNew(256);
dyStringAppend(dy,
"document.getElementById('checkboxGreat').checked=false;");
if (isGenomeSpaceEnabled())
dyStringAppend(dy,
"document.getElementById('checkboxGenomeSpace').checked=false;");
dyStringAppend(dy,
"return true;");
- cgiMakeCheckBoxWithId("sendToGalaxy", doGalaxy(), "checkboxGalaxy");
+ cgiMakeCheckBoxIdAndMore("sendToGalaxy", doGalaxy(), "checkboxGalaxy",
+ "aria-label='Send output to Galaxy'");
jsOnEventById("click", "checkboxGalaxy", dy->string);
hPrintf("Galaxy\n");
nbSpaces(2);
- cgiMakeCheckBoxWithId("sendToGreat", doGreat(), "checkboxGreat");
+ cgiMakeCheckBoxIdAndMore("sendToGreat", doGreat(), "checkboxGreat",
+ "aria-label='Send output to GREAT'");
jsOnEventById("click", "checkboxGreat", "return onSelectGreat();");
hPrintf(" GREAT");
if (isGenomeSpaceEnabled())
{
nbSpaces(2);
cgiMakeCheckBoxWithId("sendToGenomeSpace", doGenomeSpace(), "checkboxGenomeSpace");
jsOnEventById("click", "checkboxGenomeSpace",
"document.getElementById('checkboxGreat').checked=false;"
"document.getElementById('checkboxGalaxy').checked=false; return true;");
hPrintf(" GenomeSpace");
}
}
hPrintf("\n");
}
@@ -787,32 +789,34 @@
makeRegionButtonExtraHtml(hgtaRegionTypeGenome, regionType, "DISABLED");
hPrintf(" genome (unavailable for selected track)"
" ");
}
else
{
makeRegionButton(hgtaRegionTypeGenome, regionType);
hPrintf(" ", hgtaRegionType, hgtaRegionTypeGenome);
}
if (doEncode)
{
makeRegionButton(hgtaRegionTypeEncode, regionType);
hPrintf(" ", hgtaRegionType, hgtaRegionTypeEncode);
}
makeRegionButton(hgtaRegionTypeRange, regionType);
- hPrintf(" ", hgtaRange);
- hPrintf("\n",
+ hPrintf(" ",
+ hgtaRegionType, hgtaRegionTypeRange);
+ hPrintf("\n",
hgtaRange, hgtaRange, range);
jsOnEventById("focus", hgtaRange,
jsRadioUpdate(hgtaRegionType, "regionType", "range"));
cgiMakeButton(hgtaDoLookupPosition, "Lookup");
hPrintf(" ");
if (userRegionsFileName() != NULL)
{
makeRegionButton(hgtaRegionTypeUserRegions, regionType);
hPrintf(" ", hgtaRegionType, hgtaRegionTypeUserRegions);
cgiMakeButton(hgtaDoSetUserRegions, "Change");
hPrintf(" ");
cgiMakeButton(hgtaDoClearUserRegions, "Clear");
}
else
cgiMakeButton(hgtaDoSetUserRegions, "Define regions");