Partage
  • Partager sur Facebook
  • Partager sur Twitter

[jQuery] jQuery ne se charge pas

Sujet résolu
    9 mai 2010 à 22:29:55

    Bonjour à tous,

    Après avoir essayé de débuter avec jQuery, je suis tombé sur un problème que je n'arrive pas à résoudre : mon code javascript n'est pas interprété. Apparemment, jQuery ne se charge pas.

    Voici le code source de ma page :

    <!DOCTYPE html
    	PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
    
    <html xml:lang="fr" xmlns="http://www.w3.org/1999/xhtml"> 
    	<head> 
    		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
    		<title>Myframework -i2v</title> 
    		<script type="text/javascript" src="D:\Vinorcola\wamp\www\myframework\lib\jquery.js"></script>	</head> 
    <body> 
    <h1>Ajout d'une plante</h1> 
    
    <form method="post" action="Array"><input type="hidden" name="action_formulaire" value="ajouter" />
    <p class="texte"><label for="nom">Nom : </label><input type="text" name="nom" id="nom" maxlength="50" /></p>
    <p class="texte"><label for="date_plantation">Date de plantation : </label><input type="text" name="date_plantation" id="date_plantation" maxlength="10" /></p>
    <input type="submit" value="Valider" /></form>
    
    <p style="padding : 6px;
    padding-left : 12px;
    background-color : #8888ff;
    border : 1px solid #000000;"><a href=".">Retour à l'accueil</a></p> 
    
    <script type="text/javascript"> 
    <!--
    
    $("#date_plantation").change(function()
    {
    	if ($("#date_plantation").val().match(/^([0-9]{2}\/){2}[0-9]{4}$/))
    	{
    		
    	}
    	else
    	{
    		$("#date_plantation").append("<span class=\"format_date_plantation\"><span clas=\"erreur_format\">Format invalide. Les dates doivent être au format : JJ/MM/AAAA.</span></span>");
    	}
    });
    
    //-->
    </script>
    
    </body> 
    </html>
    


    La console de Firefox me signale
    "$ is not defined"

    Chrome me précise
    "Not allowed to load local resource: file:///D:/Vinorcola/wamp/www/myframework/lib/jquery.js"
    "Uncaught ReferenceError: $ is not defined"

    Pourtant, j'ai bien vérifié l'adresse du fichier. Elle est juste. Mon fichie "jquery.js" se trouve bien dans "D:/Vinorcola/wamp/www/myframework/lib/".

    Je ne vois donc pas d'où le problème peut venir...
    • Partager sur Facebook
    • Partager sur Twitter
      9 mai 2010 à 22:36:25

      T'as essayé de mettre un chemin relatif?
      • Partager sur Facebook
      • Partager sur Twitter
        9 mai 2010 à 22:59:16

        Oui, ça ne fonctionne pas mieux
        • Partager sur Facebook
        • Partager sur Twitter
          9 mai 2010 à 23:28:16

          La, ça fonctionne. Mais ça ne résout pas mon problème : je ne fais pas un site web, mais une application intranet qui doit pouvoir fonctionner sans internet. Ce qui n'est plus le cas ici.

          Mon fichier jQuery serais corrompu ?

          Je vais essayer de le re-télécharger.
          • Partager sur Facebook
          • Partager sur Twitter
            9 mai 2010 à 23:34:25

            Corrompu, pas au bonne endroit ou encore mauvaise version (vu que ton code est basique, je doute de la dernière solution).
            • Partager sur Facebook
            • Partager sur Twitter
              10 mai 2010 à 7:53:01

              Salut, je persiste et signe, utiliser Firebug pour toutes ces histoires de JavaScript. Il permet de voir si des erreurs se sont glissés dans le code, si les liens sont pas les bons, que du bon quoi! En plus qui peut prétendre ne pas avoir installer FF sur sa bécane :-°

              Le bonheur est ici!.

              PS: il faut juste activer l'onglet Réseaux bien entendu :D
              • Partager sur Facebook
              • Partager sur Twitter
                10 mai 2010 à 8:46:37

                En effet, firebug aide beaucoup. J'ai eu du mal à comprendre d'où ça venait :

                En fait, je développement mon petit framework. Un peut à la manière de CakePHP, lorsque je demande une page /Module/action, il me charge le controleur "ModuleControleur" situé dans le fichier "module_controleur.php".

                Lorsque j'inclue le fichier .js, il repasse par la page index.php (surement à cause de la redirection) : il génére alors une erreur indiquant que le fichier "lib_controleur.php" n'existe pas ...

                Alors je vois pas trop comment régler ça ! Il y a de grande chance que ma redirection soit mauvaise ... Je donne mon fichier .htaccess au cas où :

                #--------------------------------------------------
                # Activation de l'url rewriting
                #--------------------------------------------------
                
                # Le serveur doit suivre les liens symboliques :
                Options +FollowSymlinks
                
                # Activation du module de réécriture d'URL :
                RewriteEngine on
                
                #--------------------------------------------------
                # Règles de réécriture d'URL :
                #--------------------------------------------------
                
                RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
                • Partager sur Facebook
                • Partager sur Twitter
                  10 mai 2010 à 8:53:14

                  Citation : PC17pouces


                  Lorsque j'inclue le fichier .js, il repasse par la page index.php (surement à cause de la redirection) : il génére alors une erreur indiquant que le fichier "lib_controleur.php" n'existe pas ...



                  Et j'imagine que ton fichier lib_controleur.php contient les librairies telles que jQuery? Et ce fichier tu l'inclues dans le head?
                  • Partager sur Facebook
                  • Partager sur Twitter
                    10 mai 2010 à 8:57:09

                    Non, il n'y a pas de fichier "lib_controleur.php" et il ne devrait pas y en avoir besoin : je ne veux pas qu'il repasse par index.php, je souhaite juste qu'il inclue le fichier normalement.
                    • Partager sur Facebook
                    • Partager sur Twitter
                      10 mai 2010 à 9:26:02

                      Et si tu mets des images ou des fichiers css dans ta page, ils sont chargés? Sinon, c'est que ça vient effectivement de ton htaccess.
                      • Partager sur Facebook
                      • Partager sur Twitter
                        10 mai 2010 à 9:35:00

                        En effet, je n'arrive pas à charger d'image dans ma page.

                        EDIT : En désactivant la redirection, tout fonctionne correctement. Donc si quelqu'un est capable de dire ce que je dois modifier dans le .htaccess, car moi je ne sais pas comment ça fonctionne : j'ai juste repris le code du .htaccess de CakePHP.
                        • Partager sur Facebook
                        • Partager sur Twitter
                          10 mai 2010 à 10:23:51

                          Tente peut être un truc comme ça, mais jsuis un peu rouillé dans ce domaine.

                          RewriteRule !\.(js|ico|gif|jpg|png|css)$ /index.php?url=$1
                          
                          • Partager sur Facebook
                          • Partager sur Twitter
                            10 mai 2010 à 10:37:23

                            Non, ta solution ne fonctionne pas.

                            Mais en recherche un peu plus précisement dans les .htaccess de CakePHP, j'ai trouvé qu'il fallait faire ça :
                            <IfModule mod_rewrite.c>
                                    #--------------------------------------------------
                                    # Activation de l'url rewriting
                                    #--------------------------------------------------
                                    
                                    # Le serveur doit suivre les liens symboliques :
                                    #Options +FollowSymlinks
                                    
                                    # Activation du module de réécriture d'URL :
                                    RewriteEngine on
                                    
                                    #--------------------------------------------------
                                    # Règles de réécriture d'URL :
                                    #--------------------------------------------------
                                    
                                RewriteCond %{REQUEST_FILENAME} !-d
                                RewriteCond %{REQUEST_FILENAME} !-f
                                    RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
                            </IfModule>


                            Voila, voila. Maintenant tout fonctionne correctement. Merci à vous pour votre aide.
                            • Partager sur Facebook
                            • Partager sur Twitter

                            [jQuery] jQuery ne se charge pas

                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                            • Editeur
                            • Markdown