IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

alert ne fonctionne pas


Sujet :

JavaScript

  1. #1
    Expert confirmé Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 293
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 293
    Par défaut alert ne fonctionne pas
    Bonjour,

    Je m'arrache les cheveux: Pourquoi le code suivant ne fonctionne pas?
    Le navigateur et la page restent inertes. Alors que j'aurais aimé un message

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <html>
    <head>
    <script language="javascript" type="text/javascript">
    function fixer_changement()
    {
        alert('bozo');
    }
    </script>
    </head>
    <body>
        <FORM name="f" Method="POST" Action="rapport.php">
     
            <select name="monNom" size="1" onchange="fixer_changement()">
                <option>monOption1</option>
                <option>monOption2</option>
            </select>
    ....
    NB: si je mets alert dans les guillements qui suivent onchange, j'ai un message

  2. #2
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut
    il suffit de regarder la coloration syntaxique de ton code pour voir qu'il est incorrect

    A+JYT

  3. #3
    Expert confirmé Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 293
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 293
    Par défaut
    Les apostrophes étaient échappées car dans une chaine de caractère PHP. J'ai corrigé mon premier message.

    Cela ne change pas ma question sur le dysfonctionnement de javascript.

  4. #4
    Inactif  
    Homme Profil pro
    Inscrit en
    Janvier 2014
    Messages
    374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Janvier 2014
    Messages : 374
    Par défaut
    Votre syntaxe est bonne !
    Néanmoins il faut au moins deux options pour tester le "onchange" !...
    Or vous n'en avez qu'une, donc ça ne change jamais...

    Ajoutez 2 ou 3 <option> pour Tester !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <select name="monNom" size="1" onchange="fixer_changement()">
         <option>Sélectionnez</option>
         <option>Renault</option>
         <option>Peugeot</option>
         <option>Opel</option>
    </select>
    De la même manière :
    Quand vous aurez ajouté vos options supplémentaires, si vous sélectionnez "X" votre alert va se déclencher, mais si derrière vous choisissez "X" de nouveau l'alert ne déclenchera pas, car il n'y a pas eu changement...

  5. #5
    Expert confirmé Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 293
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 293
    Par défaut
    A vouloir faire disparaître les informations sensibles, j'ai supprimé trop d'options. Mais dans le code, il y a bien plusieurs options.

    J'ai modifié le message initial.

  6. #6
    Inactif  
    Homme Profil pro
    Inscrit en
    Janvier 2014
    Messages
    374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Janvier 2014
    Messages : 374
    Par défaut
    Tout à l'heure, j'avais copié votre code, et je l'avais testé avec IE.
    Il fonctionne parfaitement, à condition d'avoir 1 sélect avec plusieurs options !
    Capito ?...

    Ou alors vous avez désactivé Javascript !... tout simplement...

  7. #7
    Expert confirmé Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 293
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 293
    Par défaut
    Le problème est que d'autres bouts de la page ont du javascript et ils fonctionnent. La fonction alert bloque. J'ai tenté de copier/coller le code généré par php dans une simple page html/javascript pour éviter les erreurs d'empilement de langage mais le navigateur ne change pas de comportement.

    Qu'est-ce qui peut bloquer "alert" ?
    Je précise qu'écrire alert('toto') dans l'ardoise javascript de firefox fonctionne.

  8. #8
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut
    Afficher le source de la page dans le navigateur
    et le poster ici pour être sur de ce que tu exécute

    ouvrir le débuguer du navigateur et lire les information de l'erreur produite

    bref le B.A.BA de la mise au point d'un dev HTML.

    ensuite on pourras peut-être t'aider.
    là on fait des conjecture sur du code hasardeux sans information sur l'environnement d'éxecution.
    A+JYT

  9. #9
    Inactif  
    Homme Profil pro
    Inscrit en
    Janvier 2014
    Messages
    374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Janvier 2014
    Messages : 374
    Par défaut
    Je viens de copier votre code à nouveau.
    j'ai rajouté les balises </body> et </html> qui manquent.
    J'ai sauvé ce fichier en bozo.html.
    Je l'ai ouvert sous 4 navigateurs (IE, Chrome, Opera et le renard), et comme je vous l'ai dit cela fonctionne !...

    Votre problème est ailleurs ! (comme l'a suggeré sekaijin)

  10. #10
    Expert confirmé Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 293
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 293
    Par défaut
    Laissez tomber, j'ai trouvé.

    Après avoir tout tenter en terme de simple quote, double quotes, échappements, j'ai fini par trouvé la syntaxe non bloquante et qui marche:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onchange="alert(&quot;toto&quot;+&quot; et &quot;+&quot;tata&quot;);"
    Merci pour vos recherches.

    [edit]Sur le forum, même dans la balise code, le texte est interprété. Je n'ai pas le temps de corriger cette erreur d'affichage. Désolé. [/edit]

  11. #11
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onchange="alert('toto'+' et '+'tata');"
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  12. #12
    Expert confirmé
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par défaut
    Citation Envoyé par Flodelarab Voir le message
    Laissez tomber, j'ai trouvé.

    Après avoir tout tenter en terme de simple quote, double quotes, échappements, j'ai fini par trouvé la syntaxe non bloquante et qui marche:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onchange="alert(&quot;toto&quot;+&quot; et &quot;+&quot;tata&quot;);"
    Merci pour vos recherches.

    [edit]Sur le forum, même dans la balise code, le texte est interprété. Je n'ai pas le temps de corriger cette erreur d'affichage. Désolé. [/edit]
    encore une fois cela confirme ce que je dis toujours
    "NE JAMAIS PRODUIRE DE JAVASCRIPT DYNAMIQUEMENT"

    Il n'existe aucun cas qui ne soit pas gérable par un fichier js statique.

    non seulement produire du js avec PHP ou Java ou tout autre langage côté serveur entraine ce genre de déboires
    mais c'est en plus contre performant.

    il est tellement plus simple de mettre ces fonctions js dans des fichier js et de les charger au besoin.
    quant à passer des donnée entre le serveur et la page il y a JSON (même sans AJAX)

    A+JYT

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Fonction qui ne fonctionne pas sans alert()
    Par alaninho dans le forum jQuery
    Réponses: 6
    Dernier message: 09/07/2014, 16h02
  2. Réponses: 0
    Dernier message: 17/04/2011, 18h28
  3. UNION qui ne fonctionne pas
    Par r-zo dans le forum Langage SQL
    Réponses: 7
    Dernier message: 21/07/2003, 10h04
  4. Un Hint sur un PopupMenu ne fonctionne pas !!??
    Par momox dans le forum C++Builder
    Réponses: 6
    Dernier message: 26/05/2003, 16h48
  5. ca ne fonctionne pas (generateur auto-incrémentant)
    Par tripper.dim dans le forum SQL
    Réponses: 7
    Dernier message: 26/11/2002, 00h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo