javascript - 检测通用自定义属性的值而不直接向元素添加代码?

标签 javascript html

我试图弄清楚,使用Javascript,如何使用最后一个属性“aria-invalid”(等于“true”或“false”)来检测电子邮件输入的值。问题是页面上的其他字段以相同的方式使用相同的属性“aria-invalid”。不确定如何只能读取电子邮件输入属性的值?我无法向元素添加任何代码,也不能添加 jQuery。

<input class="masked-zip-code not-empty input-validation-error" data-val="true" data-val-regex="Enter a valid (5-digit) ZIP code." data-val-regex-pattern="^\d{5}(-\d{4})?$" data-val-required="Enter a ZIP code" id="ZipCode" name="ZipCode" type="text" value="" aria-required="true" aria-describedby="ZipCode-error" aria-invalid="true">

最佳答案

您需要一种方法来区分哪个是哪个,并且由于 aria-invalid 是共享的,因此不能用于此目的。您可以使用 ID 或 type="email" 来区分此类字段。请参阅以下内容:

<input class="masked-zip-code not-empty input-validation-error" data-val="true" data-val-regex="Enter a valid (5-digit) ZIP code." data-val-regex-pattern="^\d{5}(-\d{4})?$" data-val-required="Enter a ZIP code" id="ZipCode" name="ZipCode" type="text" value="" aria-required="true" aria-describedby="ZipCode-error" aria-invalid="true">
<input class="masked-zip-code not-empty input-validation-error" data-val="true" data-val-regex="Enter a valid (5-digit) ZIP code." data-val-regex-pattern="^\d{5}(-\d{4})?$" data-val-required="Enter a ZIP code" id="ZipCode" name="ZipCode" type="email" value="" aria-required="true" aria-describedby="ZipCode-error" aria-invalid="true">

然后您可以使用此代码访问 aria-invalid 值:

var aria-invalid-value = document.querySelector("input[type='email']")[0].getAttribute('aria-invalid');

关于javascript - 检测通用自定义属性的值而不直接向元素添加代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41645428/

相关文章:

html - CSS 属性冲突,哪个应该赢?

jquery 鼠标悬停 while 循环

javascript - Mongoose 填充值并修改对象

python - Pyramid 中的 HTML 表单名称数组解析(Python)

javascript - 在 NodeJs 端点中引用 JSON 对象时未定义“id”

javascript - 根据加载的 HTML 文件更改菜单选项颜色

javascript - 切换事件日期 jQuery dateclicker

html - 使 div 对某些元素可拖放

javascript - Tensorflow JS tfjs |无法使用 tf.loadLayersModel 加载模型

javascript - 如何找出防止事件冒泡的地方?