2009-06-26 26 views
9

¿Cómo obtener la identificación de una etiqueta de anclaje en jQuery? Esta es la etiqueta.¿Cómo obtener la identificación de una etiqueta de anclaje en jQuery?

<ul class="formfield"> 
    <li class="selected"><a href="" id="text">Text</a></li> 
    <li><a href="" id="textarea">Textarea</a></li> 
</ul> 

Necesito obtener la identificación, es decir, textarea, texto, etc. en una variable.

Intenté algo como esto, pero no existe tal cosa como FieldValue, supongo.

$('.formfield a').click(function() {   
    fieldType=$('.formfield a').fieldValue(); 
    alert(fieldType); 
}); 

Respuesta

31

Para obtener el atributo id de un campo, puede hacer:

$('ul.formfield a').click(function() { 
    var id = $(this).attr('id'); 
    alert(id); 
}); 

para obtener el contenidos de texto de las etiquetas A (el texto entre las etiquetas de apertura y cierre), se haría:

$('ul.formfield a').click(function() { 
    var text = $(this).text(); 
    alert(text); 
}); 

Tenga en cuenta el uso de $(this) dentro de la función clic. Estabas reutilizando el selector que no haría lo que deseas. Dentro del controlador de eventos, this se refiere al elemento sobre el que se actúa, por lo que con el código anterior obtendrás 'texto' o 'área de texto' dependiendo de cuál hagas clic.

+0

"this.id" también tendría el valor (es estándar para un elemento DOM) –

1

Dijiste que quieres una variable?

Aquí van:

var myvariable = $('ul.formfield a').attr('id'); 

que le dará el id del primer elemento coincidente, o en su ejemplo "texto".

+0

¿Cómo obtener un elemento en particular al proporcionar id? Por ejemplo, si necesito esto? id = "textarea" – Janath

Cuestiones relacionadas