2009-09-27 9 views
6

hi im próbuje uzyskać wartość rel jednego przycisku, który jest kliknij:jak uzyskać wartość rel z klikniętego elementu

function forwardStep() 
{ 
    $("#forwardStep").bind("click", function(){ 
     var page = $(this).attr('rel'); 

ów prawie podstawę ale to return „undifined”. Wiesz dlaczego?

Pozdrawiam Phil Jackson

+0

Co elementu '# forwardStep' wyglądać w html zamknięte? –

+0

Wygląda na to, że brakuje funkcji. – Eric

Odpowiedz

0

Bo to nigdy nie było zdefiniowane? Gdzie jest html? Czy na pewno kierujesz odpowiedni element?

0

$ (this) da ci dowolny element o id "#forwardStep", więc aby ten przykład zadziałał powinien być linkiem lub kotwicą, ale powiedziałeś, że był to przycisk.

Nie sądzę, że przycisk może mieć atrybut rel. Jeśli próbujesz uzyskać atrybut rel z linku, musisz wybrać ten link, a nie "to". na przykład $ ('# theLinkId'). attr ('rel').

Powinieneś dodać kod HTML do tego pytania.

15

Jeśli używasz przycisku z identyfikatorem, to nie powinieneś dostawać żadnych dodatkowych danych z atrybutu rel, ponieważ funkcja jest unikalna dla twojego przycisku.

Ale jeśli masz inne powody, po prostu upewnij się, że twój przycisk ma zdefiniowany atrybut rel, np.

<input id="forwardStep" rel="test" type="button" value="forward" /> 

a funkcja jest prawidłowo

$(document).ready(function(){ 
$('#forwardStep').bind('click',function(){ 
    var page = $(this).attr('rel'); 
    alert(page); 
}) 
})