我想从网页中获取所有元素。我使用表单ID或名称来获取所有元素,但如果没有表单ID或名称,则无法从该页面获取元素。这个问题的替代方案是什么。请帮忙。
答案 0 :(得分:6)
您可以使用document.getElementsByTagName('*')
检索html文档中所有节点的数组。之后,您可以遍历该数组:
var allElements = document.getElementsByTagName('*');
for (var i=0;i<allElements.length;i++){
//do things with the element, e.g.
//console.log(allElements[i].type)
//console.log(allElements[i].id)
//console.log(allElements[i].innerHTML)
}
2014年更新:更现代化的方法
var allEls = [].slice.call(document.querySelectorAll('*');
allEls.forEach( function (el) {
//do things with the element, e.g.
//console.log(el.type)
//console.log(el.id)
//console.log(el.innerHTML)
});
答案 1 :(得分:2)
您可以使用jQuery:$("html *")
,它将返回html标记之间的所有元素
您必须使用的名称$("html *").attr('name')
对于值$("html *").val()
或$("html *").attr('value')
答案 2 :(得分:0)
听说过jQuery这个东西吗?借助遍历API,您可以获得所需的元素。以下是API的完整列表 - http://api.jquery.com/
答案 3 :(得分:0)
你可以使用jQuery选择器,如: $(“*”)。这个特定的选择器将返回该html页面的所有元素(标签)。
答案 4 :(得分:-1)
也许你可以试试这个:document.childNodes
没有框架,需要lib。