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

AJAX Discussion :

[AJAX] Evénement sur navigation


Sujet :

AJAX

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 201
    Points : 26
    Points
    26
    Par défaut [AJAX] Evénement sur navigation
    bonjour


    j'ai besoin d'envoyer un lien en continu lorsque je me deplace dans une grande page web

    je m'explique: j'utilise un systeme externe en webservice
    c'est a dire que je dois envoyer un lien http:ip/dev/mavaleur
    avec un bouton , il n'y a pas de problème , car j'utilise les évènements onclick en javascript pour envoyer le code

    mais pour cet exemple , je dois envoyer ce code lorsque je navigue dans la page web
    genre lorsque je suis en haut de la page j'envoie http:ip/dev/0
    et quand je suis en bas de page j'envoie http:ip/dev/100
    au milieu http:ip/dev/50
    bref tout cela en fonction d'où je me trouve dans la page


    je m'explique peut être mal, mais apparemment ça serait plus facile de faire cela en ajax
    je ne connait pas trop l'ajax mais je souhaiterais apprendre


    merci

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Ta question n'a rien à voir avec AJAX,
    savoir ou es ta souris est enfantin et décrit dans toutes les aides
    sur nos Topos et autres aides google

    Donc il fagit de JavaScript pur et dur !

    Ensuite qu'en fonction de ta position tu ais envie d'appeler AJAX (JavaScript)
    c'est pareil qu'avec onclic ou autre. Tu peux également appeler AJAX avec un SETTIMEOUT bef AJAX est une fonction comme toute les autres.

    Bon courage
    Christele

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 201
    Points : 26
    Points
    26
    Par défaut
    j'ai posté dans le forum javascript et on m'a dit de venir dans le forum ajax

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 201
    Points : 26
    Points
    26
    Par défaut
    voila ce que je dois faire,
    avec cette exemple: http://iosscripts.com/iosslider/
    lorsque je change de visuel , je dois envoyer en restful des commande http,

    dans cette exemple , il y a un événement "onchange" , qui se déclenche a chaque changement d'image
    ensuite la ou je flanche c'est l'envoi de cette commande car si je met un lien en javascript , ça m'ouvre une nouvelle fenetre ..je ne sais pas faire du restfull


    merci

  5. #5
    Invité
    Invité(e)
    Par défaut
    Escuses moi mais j'ais été voir, et je ne comprends toujour pas !
    mettons que tu saches changer l'image, tu peux avoir en même temps
    une commande mon_ajax_go();

    Tu appelera ainsi un php par exemple, http://www.site.com/xxx.php
    qui te renverra un texte ou nimporte quel code ... bref justement a chaque changement d'image tu veux quoi en plus.
    expliques
    Christele (qui reviendra demain ... promis

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 201
    Points : 26
    Points
    26
    Par défaut
    je vais faire plus simple et commencer par le debut
    je dois piloter un appareil en webservice restfull

    un exemple , pour piloter en ip , une tv ,et changer de chaine
    je dois envoyer un code
    chaine 1 : http://mytv/chaine/1
    chaine 2 : http://mytv/chaine/2
    chaine 3 : http://mytv/chaine/3

    imagine une page web avec 4 boutons , lorsque j'appui sur le 1er bouton , ca envoie le code http://mytv/chaine/1 , http://mytv/chaine/2 pour le bouton 2

    si je cree un lien avec mon bouton href://http://mytv/chaine/1 , c'est sur, ça ouvre une page web et ca envoie le code mais c'est pas ce que je veux

    apparemment , il faut utiliser la methode restful mais je ne ne connait pas cette methode





    edit:
    j'ai trouver un exemple pour le webservice geo de google


    http://www.webmonkey.com/2010/02/Get...oding_via_HTTP

  7. #7
    Invité
    Invité(e)
    Par défaut
    Il suffit que ta fonction AJAX fasse un

    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
    18
    19
    20
    21
    22
     
    function maFonctionAjax(unParametre)
    {
       var MonAjax;
       if (window.XMLHttpRequest)    {
          MonAjax = new XMLHttpRequest();    }
       else if (window.ActiveXObject)    {  
          MonAjax = new ActiveXObject('Microsoft.XMLHTTP');    }
       else    {
       alert("Votre navigateur n'est pas adapté pour faire des requêtes AJAX..."); 
        MonAjax = false;   }
        MonAjax.open('POST',"ton URL",true); 
        MonAjax.onreadystatechange = function()
        {
          if (MonAjax.readyState == 4 && MonAjax.status == 200)
          {
    //==========C OK chaine changée=======    
          }
       }
     MonAjax.setRequestHeader('Content-type','application/x-www-form-urlencoded');
     MonAjax.send('unParametre='+unParametre);                  
    }
    unParametre c'est 1 2 ou x

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 201
    Points : 26
    Points
    26
    Par défaut
    bonjour


    merci pour l'aide ...je vais paraitre bete mais ce code , c'est de l'ajax ?
    ça s'implemente comment dans une page html ?



    est ce dans cette fonction que je peux recuperre mes reponses ?
    MonAjax.onreadystatechange = function()
    {
    if (MonAjax.readyState == 4 && MonAjax.status == 200)
    {
    //==========C OK chaine changée=======
    }
    }

  9. #9
    Invité
    Invité(e)
    Par défaut
    Attention AJAX c'est TOUT et surtout XMLHttpRequest !!
    donc laisses toute la fonction compléte !

    et ça se mets nimporte ou dans ton html !
    Alors bien sur tu mets la bonne URL (http://mytv/chaine/)

    Christele

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 201
    Points : 26
    Points
    26
    Par défaut
    ok ..je vais essayer cela ...merci beaucoup

  11. #11
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 201
    Points : 26
    Points
    26
    Par défaut
    depuis tout a l'heure , j'essaye en vain
    voila ma page

    et je dois envoyer http://192.168.0.10/command/1
    dans un navigateur cette commande fonctionne , donc ce n'est pas du a ma ligne de commande

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    <!DOCTYPE html>
    <html>
    <head>
     
     
    <SCRIPT >
     
     
     
    function maFonctionAjax(unParametre)
    {
       var MonAjax;
       if (window.XMLHttpRequest)    {
          MonAjax = new XMLHttpRequest();    }
       else if (window.ActiveXObject)    {  
          MonAjax = new ActiveXObject('Microsoft.XMLHTTP');    }
       else    {
       alert("Votre navigateur n'est pas adapté pour faire des requêtes AJAX..."); 
        MonAjax = false;   }
        MonAjax.open('POST',"http://192.168.0.10/command/",true); 
        MonAjax.onreadystatechange = function()
        {
          if (MonAjax.readyState == 4 && MonAjax.status == 200)
          {
    //==========C OK chaine changée=======    
          }
       }
     MonAjax.setRequestHeader('Content-type','application/x-www-form-urlencoded');
     MonAjax.send('unParametre='+unParametre);                  
    }
     
     
     
    </script>
     
     
     
    </head>
    <body>
     
    <div id="myDiv"><h2>test</h2></div>
    <button type="button" onclick="maFonctionAjax(1)">Change Content</button>
     
    </body>
    </html>

  12. #12
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Bonjour,

    1- Sur le lien que tu donnes, tu passes la variable en URL (GET), or que dans le code javascript tu le passes par POST.
    2- Utilise un chemin relatif pour les adresses mais pas absolu.

    A+.

  13. #13
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 201
    Points : 26
    Points
    26
    Par défaut
    effectivement , mais j'ai essayé en get et cela ne marche pas ,


    faut il mettre des guillement a l'url ?
    MonAjax.open('GET',url,true);

  14. #14
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     MonAjax.open('POST',"http://192.168.0.10/command/"+unParametre,true);
    ...
    MonAjax.send(null);
    et vire cette ligne:
    MonAjax.setRequestHeader('Content-type','application/x-www-form-urlencoded');
    A+.

  15. #15
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 201
    Points : 26
    Points
    26
    Par défaut
    petite avancé

    pour activer ma commande , j'ai besoin d'un nom utilisateur et mot de passe
    (admin/admin)
    dans la barre d'adresse , soit je faisait http://192.168.0.10/command/1 et il me deamandait d'inserer le nom utilisateur et mot de passe
    ou soit je fait http://admin:admin@192.168.0.10/command/1

    donc le dernier script que j'ai fait fonctionne seulement sur internet explorer , et la 1ere fois il me demande le mot de passe et ca fonctionne qu'une seule fois


    sur firefiox , ca ne fonctionne pas

    j'ai donc essayé de faire MonAjax.open('GET',"http:admin:admin@//192.168.0.10/command/"+unParametre,true); mais sur ie , il m'indique une erreur "un probleme de securite est survenu"

    est ce possible d'indiquer le mot de passe autrement


    merci

  16. #16
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    De quelle adresse utilises-tu ce script ?
    Parce que tu es peut-être limité par la Same Origin Policy...
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  17. #17
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 201
    Points : 26
    Points
    26
    Par défaut
    je suis en local

  18. #18
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 201
    Points : 26
    Points
    26
    Par défaut
    ok ok , j'ai trouvé pour le mot de passe
    il faut faire :
    MonAjax.open('GET',"http://192.168.0.10/command/"+unParametre,true,"admin","admin")


    n'empeche que ca fonctionne que sur internet explorer et qu'une seul fois!!!

  19. #19
    Invité
    Invité(e)
    Par défaut
    Recopies le code complet car je ne sais plus ou tu en es

    N'oublies pas comment tu devrais écrire un lien car c'est la ou tu te trompes de syntaxe.

    Donc comment tu écrirais un lien <A href= etc..... pour lui passer 1 2 ou x ET le login.
    Avec ça je te réécrirais cette ligne

    A+
    Christele

  20. #20
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 201
    Points : 26
    Points
    26
    Par défaut
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    <!DOCTYPE html>
    <html>
    <head>
     
     
    <SCRIPT >
       function Message() {
     
       }
     
     
    function maFonctionAjax(unParametre)
    {
       var MonAjax;
       if (window.XMLHttpRequest)    {
          MonAjax = new XMLHttpRequest();    }
       else if (window.ActiveXObject)    {  
          MonAjax = new ActiveXObject('Microsoft.XMLHTTP');    }
       else    {
       alert("Votre navigateur n'est pas adapté pour faire des requêtes AJAX..."); 
        MonAjax = false;   }
    	MonAjax.open('GET',"http://192.168.0.10/command/"+unParametre,true,"admin","admin");
     
     
     
     MonAjax.send(null);                  
    }
     
    </script>
     
     
     
    </head>
    <body>
     
    <div id="myDiv"><h2>PUSH BUTTON</h2></div>
    <button type="button" onclick="maFonctionAjax('on')">ON</button>
    <button type="button" onclick="maFonctionAjax('off')">OFF</button>
    </body>
    </html>



    cela fonctionne 1 seul fois sur internet explorer ( 1 fois appuis sur bouton on , et une fois sur bouton off) , sinon je suis obligé de reouvrir une nouvelle fenetre,

    ça ne fonctionne pas sur firefox




    j'ai bien une indication d'erreur sur firefox avec firebug mais je ne sais pas comment les voir

Discussions similaires

  1. Ajax/Evènements sur les controles dynamiques
    Par pierre1256 dans le forum ASP.NET
    Réponses: 1
    Dernier message: 01/02/2010, 09h59
  2. [AJAX] Evènement Onchange sur IE7 et AJAX
    Par vetchang dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 20/06/2008, 11h45
  3. [AJAX] aide sur fonction ajax navigation
    Par speedylol dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 13/11/2006, 14h17
  4. Non réception d'un evènement sur une JTable
    Par Kant dans le forum Composants
    Réponses: 4
    Dernier message: 28/05/2004, 10h38
  5. Evènement sur clic droit !?
    Par soccersoft dans le forum Composants VCL
    Réponses: 6
    Dernier message: 26/12/2002, 21h39

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