如何按名称获取html元素

时间:2010-10-04 15:30:52

标签: javascript html

java脚本中是否有一种方法只能获取特定名称而不是使用返回数组的document.getElementsByName("x");?我有一种特殊的情况,我不能使用id。有什么建议吗? 谢谢。

3 个答案:

答案 0 :(得分:11)

得到第一个元素:

document.getElementsByName("x")[0];

或者为了安全:

function getFirstElementByName(element_name) {
    var elements = document.getElementsByName(element_name);
    if (elements.length) {
        return elements[0];
    } else {
        return undefined;
    }
}

(BTW getElementsByName返回一个集合,而不是一个数组。)

答案 1 :(得分:7)

如果您正在寻找单个元素,请从节点列表中获取第一个元素,例如:

var element = document.getElementsByName("x")[0];

You can test it out here

答案 2 :(得分:0)

或者使用jQuery,因此您无需担心所有浏览器烦恼。

你必须这样做:

$("*[name='x']").first();

获取具有该名称的第一个元素。如果您知道元素类型,则可以使用它而不是“*”。 jQuery每次都会让你的生活更轻松!