在没有jQuery的情况下获取所有此类元素

<input type="checkbox" name="IB_PROPERTY_415_DEL" id="IB_PROPERTY_415_DEL" value="Y">
<input type="checkbox" name="IB_PROPERTY_417_DEL" id="IB_PROPERTY_417_DEL" value="Y">


415每次迭代都更改一次,并带有整个值(414、416等)
页面上存在具有其他名称的其他复选框
我需要一次性解决方案,用于控制台脚本

最佳答案

使用循环?

var elements = [];
for (var i=415; i<418; i++)
    elements.push(document.getElementById("IB_PROPERTY_"+i+"_DEL"));


(唯一标识符应该足够了)

如果您不知道ID,可以尝试以下操作:

var inputs = document.querySelectorAll("input[type=checkbox][value=Y]");
var elements = [];
for (var i=0; i<inputs.length; i++)
    if (inputs[i].name == inputs[i].id && /^IB_PROPERTY_\d{3}_DEL$/.test(inputs[i].id))
        elements.push(inputs[i]);


(请注意,document.querySelectorAll不适用于所有浏览器,请参阅@Matt的解决方案以获得更好的方法)

关于javascript - 通过 mask 获取所有元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11393387/

10-12 07:19