如何仅将 querySelectorAll 用于具有特定属性集的元素?

2022-01-10 00:00:00 css-selectors javascript selectors-api

我正在尝试对所有设置了 value 属性的复选框使用 document.querySelectorAll.

I'm trying to use document.querySelectorAll for all checkboxes that have the value attribute set.

页面上还有其他复选框没有设置value,每个checkbox的值都不一样.id 和名称不是唯一的.

There are other checkboxes on the page that do not have value set, and the value is different for each checkbox. The ids and names are not unique though.

示例:<input type="checkbox" id="c2" name="c2" value="DE039230952"/>

如何只选择那些设置了值的复选框?

How do I select just those checkboxes that have values set?

推荐答案

你可以像这样使用querySelectorAll():

var test = document.querySelectorAll('input[value][type="checkbox"]:not([value=""])');

这转化为:

获取属性为value"且属性value"不为空的所有输入.

get all inputs with the attribute "value" and has the attribute "value" that is not blank.

在这个演示中,它禁用了非空值的复选框.

In this demo, it disables the checkbox with a non-blank value.

相关文章