E.g.

<div class="myclass" id="div_1"></div>
<div class="myclass" id="div_2"></div>
<div class="notmyclass" id="div_3"></div>

Me gustaría terminar con una matriz similar a ["div_1", "div_2"]

6
cjm2671 20 sep. 2011 a las 21:51

3 respuestas

La mejor respuesta

Después de seleccionar $(".myclass"), puede usar el método .map() [ docs ] para tomar el .id de cada elemento. Esto devolverá un objeto tipo matriz jQuery que contiene los identificadores.

var ids = $(".myclass").map(function() { return this.id; });

Agregue .toArray() [docs] hasta el final si lo necesita Una variedad real.

11
Jeremy Banks 20 sep. 2011 a las 17:54
var IDs = [];

$('.myclass').each(function(){
    IDs.push( this.id );
});
1
Joseph Silber 20 sep. 2011 a las 17:53

Además de .map necesitas .get() si quieres una matriz al final:

$('.myclass').map(function() { return this.id; }).get();
0
Joseph Silber 20 sep. 2011 a las 18:06