使表格行或单元格被表格读取为可点击 [英] Make table row or cell be read by a table as clickable

查看:33
本文介绍了使表格行或单元格被表格读取为可点击的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在处理一个表,我想提高它的可访问性,但问题是它是用具有onClick"的表行创建的.属性,当使用诸如 VoiceOver、NVDA 或 JAWS 之类的屏幕阅读器阅读单元格和表格时,它不会将该行读取为可点击或任何会告诉用户点击该行会将他带到另一个页面的标志.

该表是由 JQuery Datatables 动态创建的,表的一个片段是这样的:

<表class="list lista table table-bordered table-hover dlaList component-editable dataTable";data-editable-id="dla28475";样式=宽度:900px";id="DataTables_Table_1";><头><tr role="row"><th类=排序"tabindex=0";行跨度=1"colspan=1"样式=宽度:230px";>活动</th><thclass="sorting_asc";tabindex=0";行跨度=1"colspan=1"样式=宽度:570px";咏叹调排序=升序";>描述</th><th类=排序"tabindex=0";行跨度=1"colspan=1"样式=宽度:100px";>地位</th></tr></thead><tbody角色=警报"aria-live=礼貌"咏叹调相关=所有"><tr class="odd";onclick="functionForEvent();"><td class=""><div class="input-sm";status_id=未定义">废话</div></td><td class="sorting_1"><div class="input-sm";status_id=未定义">等等等等</div></td><td class=""><div class="input-sm";status_id=未定义">等等等等</div></td></tr></tbody>

我目前创建的解决方案是在每个 周围添加一个,因此让屏幕阅读器说链接"但我看到其他表格说可点击"不需要链接,但我不知道他们是如何通过查看 HTML 来做到这一点的,它们似乎只是在 tr 元素上带有 onClick 的常规表格.

这里的一个不好的迹象可能是角色"属性破坏了我所读到的语义,该表不是由我创建的,因此我不知道是否可能是这种情况.

解决方案

前言

向 OP 道歉 如果该行旨在将人们带到另一个页面,则此答案中的一些内容可能会产生误导.

首先对于选项 1 和 2 下面将