2017-09-06 1 views
1

J'essaye de trouver une URL spécifique dans le code HTML que je suis en train de charger via AJAX get.Charger html en utilisant ajax get, puis trouver un contenu spécifique par tag

J'ai essayé d'utiliser le code ci-dessous, mais il renvoie undefined

var url_f_elem = $(html).find(".wb-bnr ~ a").html(); 

Le html est ci-dessous - Je cherche à acquérir l'URL dans la a href

<header role="banner"> 
<div id="wb-bnr" class="container"> 
    <section id="wb-lng" class="visible-md visible-lg text-right"> 
    <h2 class="wb-inv">Language selection</h2> 
    <div class="row"> 
     <div class="col-md-12"> 
      <ul class="list-inline margin-bottom-none"> 
       <li> 
        <a lang="fr" href="/fr/ministere-defense-nationale/nouvelles/2017/09/la_construction_dunnouveaubatimentamelioreralentretiendevehicule.html"> 
         Français 

        </a> 
       </li> 

      </ul> 
     </div> 
    </div> 
</section> 
+0

'wb-bnr' est de classe ou Id ?? si id utilise '$ (html) .find (" # wb-bnr ~ a "). html();' – XYZ

Répondre

2

Tout d'abord wb-bnr est le id de l'élément, et non la class, donc vous devriez utiliser #wb-bnr.

Deuxièmement, l'opérateur ~ est le sélecteur de frère général qui n'est pas approprié ici car le a n'est pas un frère de #wb-bnr. Vous pouvez simplement l'enlever.

Enfin, pour obtenir l'URL dont vous avez besoin pour obtenir l'attribut href, pas le texte de l'élément. Essayez ceci:

var url_f_elem = $(html).find("#wb-bnr a").attr('href'); 
0

Je pense que vous avez besoin pour le faire au cas où vous auriez besoin de la chaîne "Français".

var url_f_elem = $('#wb-bnr').find('a').html().trim(); 

Je pense que vous devez faire cela au cas où vous auriez besoin d'url attr.

var url_f_elem = $('#wb-bnr').find('a').attr('href'); 
1

Vous pouvez essayer comme ça

$(html).find("#wb-bnr a").attr('href'); 

Vous ne devez pas utiliser le sélecteur de frères et soeurs. $ ("Prev ~ siblings") est utilisé pour sélectionner tous les éléments frères qui suivent l'élément "prev", ont le même parent et correspondent au sélecteur de filtrage "frères". https://api.jquery.com/next-siblings-selector/

échantillon Snippet:

var url_f_elem = $('body').find("#wb-bnr a").attr('href'); 
 
console.log(url_f_elem);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<header role="banner"> 
 
<div id="wb-bnr" class="container"> 
 
    <section id="wb-lng" class="visible-md visible-lg text-right"> 
 
    <h2 class="wb-inv">Language selection</h2> 
 
    <div class="row"> 
 
     <div class="col-md-12"> 
 
      <ul class="list-inline margin-bottom-none"> 
 
       <li> 
 
        <a lang="fr" href="/fr/ministere-defense-nationale/nouvelles/2017/09/la_construction_dunnouveaubatimentamelioreralentretiendevehicule.html"> 
 
         Français 
 

 
        </a> 
 
       </li> 
 

 
      </ul> 
 
     </div> 
 
    </div> 
 
</section>

+0

Toutes les bonnes réponses, c'était le premier, donc je vais accepter cela. Je vous remercie. –

+0

C'était en fait le dernier, mais peu importe –

+0

@RoryMcCrossan Son vrai.J'étais le dernier – XYZ