jQuery .load() ne fonctionne pas
Sur mon site, j'essaie de tirer le contenu d'un post dans mon forum (hébergé sur le même domaine) et l'afficher dans une div sur la page d'accueil, à l'aide de jQuery.
Voici le code pour l'en-tête:
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js">
<script type="text/javascript">
jQuery("#contain").load("http://examplepage.com/forum/showthread.php?tid=NN #pid_NN");
</script>
Puis, il y a la div, j'aimerais afficher le post:
<div id="contain"></div>
Choses à considérer:
- La bibliothèque des charges de l'amende juste.
- Si je entrer un autre code, il fonctionne (comme les tests d'alerte(1);).
- La console n'est pas signaler d'éventuelles erreurs.
- Le div reste blanc; en fait, il ne s'affiche même pas. C'est là, cependant.
Ce que je fais mal?
Avez-vous vraiment besoin d'un espace:
L'espace est censé être là, de lire le manuel pour charger()
Pourquoi est-ce downvoted? L'OP montre tous les signes d'avoir fait un effort et décrit clairement le problème.
tid=NN #pid_NN
?L'espace est censé être là, de lire le manuel pour charger()
Pourquoi est-ce downvoted? L'OP montre tous les signes d'avoir fait un effort et décrit clairement le problème.
//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js
doit être http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js
//
est très bien. Cela signifie utiliser le même protocole que celui de la page, que ce soit http://
ou https://
OriginalL'auteur TW_ | 2013-02-27
Vous devez vous connecter pour publier un commentaire.
votre code doit être quelque chose comme ceci
code js
En fait, la deuxième partie de cette possibilité. @TW_, est votre
script
balise après votrediv
dans le code HTML? Si bougent pas, il n' (ou utilisezready
comme ci-dessus, mais ce n'est vraiment pas nécessaire si vous contrôlez où votrescript
tag va).Bon, peut être que le dom est prêt ?
Sweet! Merci beaucoup; il n'est jamais venu à moi que jquery lui-même devait être invoquée séparément. Je suis nouveau à ce genre de choses. 🙂 Considèrent que la réponse acceptée dans quelques minutes.
jQuery ne pas besoin d'être "invoquée" séparément. Ce que le
ready
ci-dessus n'est retarder l'exécution de votreload
jusqu'à ce que tout le code HTML a été analysé et les éléments DOM créé. Votre code en cours d'exécution avant ladiv
a été créé, et ainsi de jQuery ne pouvais pas trouver lediv
(car elle n'existe pas encore). Alors que vous utiliserready
à poignée, si vous êtes dans le contrôle de l'endroit où votrescript
tag va, c'est mieux de le mettre juste en bas de la page, juste avant la</body>
tag, et ne pas utiliserready
. Lediv
existeront alors. C'est ce que Google et Yahoo recommander.OriginalL'auteur rajesh kakawat
.load
pouvez passer votre OBTENIR params séparée:OriginalL'auteur Rhys Lees
Vous avez besoin d'une clôture
</script>
tag sur votre jQuery comprendre, et vous avez besoin d'attendre pour les dom charge.JS
HTML
ready
. Vous pouvez simplement mettre lesscript
balise de faire leload
après ladiv
. Et en fait, c'est la meilleure approche.ready
est vraiment que pour le code où vous n'avez pas de contrôle où lescript
tag va.OriginalL'auteur sjdaws
Vérifier ce code. vous devez utiliser ">*" après le numéro du conteneur de chargement de contenu du conteneur spécifique sur la page.
Espoir, cela vous aide à
OriginalL'auteur Tsimtsum