输入验证:引用aria所描述的元素尚不在DOM中的最佳实践

问题描述 投票:0回答:1

情况就是这样:输入字段(文本,电子邮件,密码)用aria-describedby="some-id"标记。如果用户输入不符合要求,则会渲染带有id="some-id"的元素。在此之前,该元素不在DOM中。

运行Google Lighthouse测试时,这被标记为错误,因为只要输入为空或满足要求,aria-describedby所指向的ID在DOM中就不存在。

我正在考虑两个解决方法:

  1. 使用id="some-id"渲染元素,但将其留空。并在用户输入不符合要求的情况下立即插入内容。
  2. id="some-id"渲染元素,并在用户输入未满足要求时立即插入标签aria-describedby="some-id"
  3. 任何建议,在这种情况下,可访问性的最佳做法是什么?

情况是这样的:输入字段(文本,电子邮件,密码)用aria- describeby =“ some-id”标记。如果用户输入不符合要求,则呈现id =“ some-id”的元素。 ...

reactjs validation accessibility wai-aria
1个回答
0
投票

aria-describedby必须指向现有元素。设置属性之前,div必须存在。

© www.soinside.com 2019 - 2024. All rights reserved.