web-dev-qa-db-fra.com

jQuery ajax load n'est pas une fonction

Cet exemple

<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js"></script>
<div id="test"></div>
<script>
$(document).ready(() => {
  $('#test').load('doesntmatter');
});
</script>

me semblait identique aux exemples du fonction de chargement ajax . Comme l'extrait de code peut vous l'indiquer, il génère des erreurs avec

Uncaught TypeError: $(...).load is not a function

Qu'est-ce que je fais mal?

18
Guillaume CR

https://code.jquery.com/jquery-3.2.1.slim.min.js est l'édition simplifiée de jquery, qui n'inclut pas ajax. slim est la version par défaut incluse dans un serveur Express. Utilisez la version complète de jquery à l’adresse https://code.jquery.com/jquery-3.2.1.min.js

52
Guillaume CR

S'il vous plaît essayer ceci

$(document).ready(function(){
    $("button").click(function(){
       $("#div1").load("demo_test.txt #p1"); 
    });
});
1
Manoher Kumar

Le format JQuery est incorrect:

$(document).ready(function() {
        $('#test').load('doesntmatter');
    });

puis ajoutez un nom de page dans votre répertoire ou autre dans les paramètres de chargement

  • Assurez-vous également que votre script est la dernière version fonctionnelle.
0
clearshot66

Essayez de ne pas utiliser JQuery pour cela:

Cela garantira que JQuery est chargé avant de l'utiliser.

window.addEventListener("load", function(event) {
  $('#preloader').delay(400).fadeOut(500);
  // Do what you want, the window is entirely loaded and ready to use.
});

L'événement de chargement est déclenché lorsque toute la page est chargée, y compris toutes les ressources dépendantes telles que les images de feuilles de style. Cela contraste avec DOMContentLoaded, qui est déclenché dès que la page DOM a été chargée, sans attendre que le chargement des ressources soit terminé.

Documentation de Mozilla: événement de chargement

Edit: Selon la question de ne pas dérouter window.loaded et jquery.load

Commencez par changer jquery.slim en jquery comme dans la réponse précédente

Deuxièmement, utilisez le gestionnaire d'événements natif pour les meilleures pratiques (à mon avis) avec les navigateurs modernes.

// To be sure $ is defined
// Window loaded event
window.addEventListener("load", function(event) {

  // Now $ or JQuery is completly available
  // Now using JQuery.load() should be defined
  $('#test').load('doesntmatter');

  // Do what you want, the window is entirely loaded and ready to use.
});
0
Shim-Sao