J’ai fait pas mal de recherches sur le sujet et je n’arrive pas à comprendre pourquoi cela ne fonctionne pas comme il se doit. J’ai un formulaire qu’un utilisateur remplit avec un ID de produit Amazon (ASIN), puis je convertis cet ID de produit en une URL, puis en .load()
cette URL sur ma page. Le problème est que, lorsque j’utilise un sélecteur avec .load()
pour ne charger qu’une partie de la page, le .load()
ne fait rien.
Lorsque je supprime le sélecteur et que .load()
avec uniquement l’URL, .load()
fonctionne. Voici mon code:
var theURL; $('#load').on('click', function() { if ($('#url').val().length < 14) theURL = 'http://www.amazon.com/dp/' + $('#url').val() + ' #dp'; else theURL = $('#url').val() + ' #dp'; $('#html').load(theURL); });
Ainsi, par exemple, theURL
serait http://www.amazon.com/dp/B00J4GIRH4 #dp
, et lorsque le sélecteur #dp
dans l’URL, le .load()
ne sera pas vérifié (vérifié en cochant la #html
élément après avoir .load()
). Lorsque le sélecteur #dp
est supprimé et que l’ theURL
est http://www.amazon.com/dp/B00J4GIRH4
, .load()
fonctionne .load()
.
L’ id="dp"
est sur l’élément body
dans la page Amazon. La référence #
fournie à load()
recherchera les descendants du panneau chargé. Pas l’élément de body
lui-même.
Essayez de cibler un élément enfant ou oubliez le sélecteur lorsque vous récupérez le body
par défaut.