We are still experiencing a problem with the RadGrid and JAWS when aria support is enabled. The JAWS form fields dialog (INS+F5) renders all elements of the grid on a single line.
Hello Jeff,
Thank you for reporting this behavior, I will share here a summary of our discussion in the support thread:
The same behavior is replicated with the following HTML only:
<table role="grid">
<thead>
<tr>
<td>
<button type="button" value="Add new record"></button>
<button type="button" value="Refresh"></button>
</td>
</tr>
</thead>
<tbody>
<tr>
<td>Just some cell</td>
</tr>
</tbody>
</table>
Actually, this is the expected behavior, because of the role="grid" attribute, which makes the whole table to be listed as a single element.
The actual issue in the RadGrid is that the role=grid is set to the wrapper div element instead of the <table> element of the MasterTableView as per https://www.w3.org/TR/wai-aria-practices/examples/grid/dataGrids.html.
As a temporary workaround, the MasterTableView-Caption property should be set and the following script added to the page:
function pageLoadHandler() {
$telerik.$(".RadGrid").each(function (ind, gridElement) {
var grid = gridElement.control;
if (grid.get_enableAriaSupport()) {
grid.get_element().removeAttribute("role");
grid.MasterTableView.get_element().setAttribute("role", "grid");
}
})
// Sys.Application.remove_load(pageLoadHandler);
}
Sys.Application.add_load(pageLoadHandler);
Regards,
Peter Milchev
Progress Telerik