我有一个带有生成的ID的复选框集合,其中一些具有额外的属性。是否可以使用JQuery检查元素是否具有特定属性?例如,我可以验证以下元素是否具有属性“ myattr”吗?该属性的值可以变化。<input type="checkbox" id="A" myattr="val_attr">A</input>例如,如何在不逐一检查的情况下获取具有此属性的所有复选框的集合?这可能吗?
3 回答

aluckdog
TA贡献1847条经验 获得超7个赞
if ($('#A').attr('myattr')) {
// attribute exists
} else {
// attribute does not exist
}
编辑:
else如果myattr存在,则以上内容将落入-branch,但为空字符串或“ 0”。如果存在问题,则应在undefined以下位置进行显式测试:
if ($('#A').attr('myattr') !== undefined) {
// attribute exists
} else {
// attribute does not exist
}

牛魔王的故事
TA贡献1830条经验 获得超3个赞
在JavaScript中,...
null == undefined
...返回true*。==和之间的区别===。另外,undefined可以定义名称(它不是像nullis这样的关键字),因此最好检查一下其他方式。最可靠的方法可能是typeof比较运算符的返回值。
typeof o == "undefined"
不过,在这种情况下,将null与之比较应该可以。
*假设undefined实际上是未定义的。
添加回答
举报
0/150
提交
取消