2010-12-09 28 views
0

Je charge un extrait HTML par Ajax et adopt dans un conteneur. Les éléments sont représentés correctement. Mais, je ne peux pas exécuter n'importe quelle méthode sur eux, c'est-à-dire n'importe quelle méthode qui devrait fonctionner sur un élément HTML.L'adoption de ResponseTree à partir d'Ajax n'est pas considérée comme des éléments HTML

var Req = new Request.HTML({'onSuccess':function(responseTree){ 
$('form').innerHTML=''; 
$('form').adopt(responseTree); 
    $('form').getElemets('ul').each(function(e){e.setStyle('display','none');}); 
} 
}}).get(href); 

retourné html est:

<ul><li><span>ssss</span></li></ul> 

je pourrais avoir oublié une parenthèse dans cet exemple, mais le code réel est OK, quand j'alerter les éléments trouvés dans la fonction each, je reçois [object Element] et pas [object HTMLUIElement] comme je devrais

Répondre

1

Semble fonctionner parfaitement bien pour moi. Voir l'exemple:

new Request.HTML({ 
    url: '/echo/html/', 
    data: { 
     html: "<ul><li><span>ssss</span></li></ul>" 
    }, 
    method: 'post', 
    onSuccess: function(response) {   
     document.body.empty(); 
     document.body.adopt(response); 
     document.body.getElements('ul').each(function(list){ 
      list.highlight(); 
     }); 
    } 
}).send();