可以使用javascript完成吗?
答案 0 :(得分:9)
如果你试图找出多个元素是否共享一个id,使用jQuery你可以$('[id=blah]').length
- 这将返回id等于'blah'的所有元素的计数。见the fiddle。如果它大于1,那么你有一个重复的id。
编辑:我在Chrome,FF和IE6中对此进行了测试,所有这些都显示有两个具有相同ID的元素。我同意让多个元素共享一个id非常糟糕,但这段代码确实有用。
答案 1 :(得分:3)
也许(如果我理解这个问题)
if (document.getElementById('theId')) {
}
答案 2 :(得分:3)
另外,为了打印所有重复项:
var elems = document.getElementsByTagName('*');
var num = elems.length;
var ids = [ ];
for(i=0; i<num; i++ ) {
var id = elems[i].getAttribute('id');
if(id != null) {
if(ids.indexOf(id) >=0 ) {
console.debug(id); // found in table
} else {
ids.push(id); // new id found, add it to array
}
}
}
答案 3 :(得分:0)
if(!document.getElementById('search')) { return; }
答案 4 :(得分:0)
是的。
通过document.getElementsByTagName('*')
进行迭代,使用element.getAttribute('id')