obter o ID de um elemento

186

Existe outra maneira de obter o ID de um elemento DOM?

element.getAttribute('id')
Rana
fonte

Respostas:

290

Sim, você pode apenas usar a .idpropriedade do elemento dom , por exemplo:

myDOMElement.id

Ou algo parecido com isto:

var inputs = document.getElementsByTagName("input");
for (var i = 0; i < inputs.length; i++) {
  alert(inputs[i].id);
}
Nick Craver
fonte
3
@Rana - Sim, é uma propriedade do elemento DOM, e todos os elementos específicos herdar o elemento básico dom, para que eles tenham a propriedade :)
Nick Craver
18
Esteja cansado disso, pois myDOMElement.idtambém pode retornar um elemento filho com o ID ou o nome de 'id'. Como visto aqui neste jsFiddle
bhattamer
20

Sim, você pode simplesmente dizer:


function getID(oObject) 
{
    var id = oObject.id;
    alert("This object's ID attribute is set to \"" + id + "\"."); 
}

Confira: Atributo de ID | Propriedade id

Morteza Manavi
fonte
15

Isso também funcionaria:

document.getElementsByTagName('p')[0].id

(Se elemento em que o primeiro parágrafo do seu documento)

donohoe
fonte
getElementsByClassNamenão é suportado no IE (antes do IE9).
precisa saber é o seguinte
Isso foi um erro. Significou 'getElementByTagName' para lidar com uma tag
donohoe
4

Super Easy Way é

  $('.CheckBxMSG').each(function () {
            var ChkBxMsgId;
            ChkBxMsgId = $(this).attr('id');
            alert(ChkBxMsgId);
        });

Diga-me se isso ajuda

Tj Laubscher
fonte
1

No manipulador de eventos, você pode obter o ID da seguinte forma

function show(btn) {
  console.log('Button id:',btn.id);
}
<button id="myButtonId" onclick="show(this)">Click me</button>

Kamil Kiełczewski
fonte
0

Você precisa verificar se é uma sequência para evitar obter um elemento filho

var getIdFromDomObj = function(domObj){
   var id = domObj.id;
   return typeof id  === 'string' ? id : false;
};
Xavier Felipe Medina
fonte
-2

Isso obtém e alerta o id do elemento com o id "ele".

var id = document.getElementById("ele").id;
alert("ID: " + id);
Jesper Engberg
fonte
10
se você sabe id, qual é a necessidade dessas linhas?
Shafeeq
Para fins ilustrativos. O código nem sempre precisa ser real.
Graham
-4

Sim. Você pode obter um elemento por seu ID chamando document.getElementById. Ele retornará um nó de elemento, se encontrado, e nullcaso contrário:

var x = document.getElementById("elementid");   // Get the element with id="elementid"
x.style.color = "green";                        // Change the color of the element
unixmiah
fonte