2017-05-07 4 views
0

Ich versuche, die href der aktuellen aktiven Registerkarte mit jQuery zu bekommen, aber es scheint nicht zu funktionieren.jQuery | Ich bekomme keine href von der aktiven Registerkarte

hier ist mein html

 <div class="profile"> 
     <div class="tabbable-line tabbable-full-width"> 
      <ul id="tabs" class="nav nav-tabs"> 
       <li class="active"> 
        <a href="#tab_1_1" data-toggle="tab"> Overview </a> 
       </li> 
       <li> 
        <a href="#tab_1_2" data-toggle="tab"> Loan Details </a> 
       </li> 
       <li> 
        <a href="#tab_1_3" data-toggle="tab"> Edit Details </a> 
       </li> 
       <li> 
        <a href="#tab_1_6" data-toggle="tab"> Delete Account </a> 
       </li> 

nach

Ich habe versucht zu tun für einige Zeit auf dieser Seite Suche:

var data = $("#tabs li.active").prop("href"); 
alert(data); 

auch:

var data = $(".profile li.active").prop("href"); 
alert(data); 

aber beide Sie geben mich raus setzen Sie als undefined

Was mache ich hier falsch?

Antwort

1

Sie zielen nicht auf das Element <a> in Ihrem Selektor. Versuchen

var data = $(".profile li.active a").prop("href"); 
alert(data); 

oder

var data = $("#tabs li.active a").prop("href"); 
alert(data); 
1

href nicht Eigentum von li Element ist, so werden Sie immer udefined in Ihrer Datenvariable. Sie sollten in Ihrem Wähler auf Tag zeigen, wie unten dargestellt:

var data = $("#tabs li.active a").prop("href"); 
alert(data); 
1

denke ich Gebrauch attr() ist besser, Binden mit einem Ereignis besser ist.

var data = $(".profile li.active a").attr("href"); 
alert(data); 
1

dieses Versuchen mit attr() statt prop().

var href= $($('ul#tabs>li.active').find('a')[0]).attr("href"); 
alert(href); 
1

Nun, Sie suchen nicht nach dem Anker-Tag versuchen Sie dies.

$(document).ready(function(){ 
    $('.active').click(function(){ 
     var href = $('a').attr('href'); 
     alert(href); 
    }); 
}); 
Verwandte Themen