2013-03-28 2 views
2

J'ai un appel ajax comme suitImpossible de lire html à partir des données ajax

$("#createnewlist").live('click', function (event) { 

    $("#ajax-loading-01").show(); 
    var createlink = $(this); 
    var accountid = createlink.parent().find("input:hidden[name='accountid']").val(); 
    var listname = createlink.parent().find("input[name='listname']").val(); 

    //create an ajaxmanager named cacheQueue 
    var ajaxManager = $.manageAjax.create('cacheQueue', { 
     queue: true, 
     cacheResponse: false 
    }); 

    ajaxManager.add(({ 
     type: 'GET', url: '/ajaxhandler', 
     data: { createwishlist: "true", accountid: accountid, listname: listname } 

     , success: function (data) { 
      alert(data) 
      $(".grid03").html($(data).find(".grid03").html()); 
     } 

    })); 

}); 

dans le succès que je récupère les données tout en alerte (données) ligne

<!-- ActionHandler IS included --> 
<p class="favtext">for at folde den ud...</p> 
<div class="query-input lynlistesearcher"> 
    <label>Søg i dine Lynlister</label> 
    <input type="text" name="textbox" id="txtesearch" /> 
</div> 
<div class="grid03"> 
    <ul> 
    <li> 
     <div class="head-text"> 
     <strong data-id="149658491" class="149658491"></strong> 
     <a rel="149658491" class="deletelistclass" rev="74123311" href="#"> 
      <translate key="delete-list">Slet liste</translate> 
     </a> 
     </div> 
    </li> 
    </ul> 
</div> 

mais lorsque je tente de récupérer le html à partir de ces données

$(data).find(".grid03").html() 

Il donne null. Quelqu'un peut-il donner une idée?

+0

Pouvez-vous nous montrer ce que vous avez des données? – Adil

+0

Essayez-vous de trouver cette classe 'grid03' dans vos données? –

+0

@ DeadMan.Yes.J'ai mis à jour ma question avec html je reçois en alerte – Athul

Répondre

1

essayer d'utiliser filter(), changeant ainsi:

$(".grid03").html($(data).find(".grid03").html()); 

à

$(".grid03").html($(data).filter("div.grid03").html()); 
+0

Cela a fonctionné comme un magie, pouvez-vous m'expliquer ce qui n'allait pas avec l'ancien – Athul

+1

@AKS, les divs sont des éléments de haut niveau et vos données de réponse ne sont pas un élément mais une chaîne, donc vous devrez utiliser filter() au lieu de find() –

+0

Merci pour cela – Athul

0

Essayez cette

$(".grid03").html($(data).eq(2).find(".grid03").html()); 
Questions connexes