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 :

Mettre a jour en jquery un code js de 2010


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2020
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2020
    Messages : 75
    Par défaut Mettre a jour en jquery un code js de 2010
    Bonjour,

    J'ai ce code de 2010 :
    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
     
    function itemSearch(name)
    {
        if(name == '') {
            document.getElementById('a_result').innerHTML = '';
        }
        else
        {
            /* À cet endroit précis, on peut faire apparaître un message d'attente */
            var loading = document.getElementById('a_result');
    			loading.style.background = 'url(images/loading.gif) #FFF no-repeat center';
    			getXhr();
     
    		xhr.onreadystatechange = function()
    			{
    			 if(xhr.readyState == 4 && xhr.status == 200) {
    				         document.getElementById('a_result').style.background = '';
     
     
    			 document.getElementById('result').innerHTML=xhr.responseText;
     
    			 }
    			}
    		xhr.open("GET","view/result.php?name="+name,true);
    		xhr.send(null);
        }
    }
    Que donnerai ce code en jquery svp ?

    Merci

  2. #2
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 505
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

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

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 505
    Par défaut
    Salut,

    Un truc du genre :
    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
     
    function itemSearch(name){
    	if(name==''){
      	$("#a_result").html("");
      }
      else{
      	var loading=$("#a_result");
            loading.css("background",'url(images/loading.gif) #FFF no-repeat center');
            $.ajax({
        	   url:"view/result.php",
               data:{"name":name}
           })
           .done(function(d){//en cas de succès
        	  console.log("done :",d);
              loading.css("background","");//ou bien loading.removeAttr("background") si tu veux le supprimer.
              $("#result").html(d);
           })
           .fail(function(err){//en cas d'erreur
              console.log("erreur :",err);});
           }
    }

  3. #3
    Membre très actif
    Homme Profil pro
    bricoleur par les mots
    Inscrit en
    Avril 2015
    Messages
    744
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 80
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : bricoleur par les mots
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2015
    Messages : 744
    Par défaut
    jour

    j' appel pas ça une mise a jour je dirait plutôt que c' est une régression car tu perd l'avantage de l' indépendance.

  4. #4
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 505
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

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

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 505
    Par défaut
    melka one
    Pourquoi ne pas dire que : je veux apprendre les nouvelles bibliothèques ?

    Sans prendre en considération le nombre des lignes en jQuery est 21, alors qu'en JS pur ça fait 27 + (la longueur des instructions...).

  5. #5
    Membre très actif
    Homme Profil pro
    bricoleur par les mots
    Inscrit en
    Avril 2015
    Messages
    744
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 80
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : bricoleur par les mots
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2015
    Messages : 744
    Par défaut
    justement jquery n'est pas récent.

  6. #6
    Membre Expert
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 491
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 491
    Par défaut
    jquery n'est plus aussi 'indispenssable/supermegaouf' comme c'etait le cas en 2010
    si tu tiens vraiment a compter tes lignes, voici la version vanilla

    Code javascript : 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
    function itemSearch(name) {
    	if(name==''){
    		document.getElementById('a_result').innerHTML = '';
    	} else {
    		const loading = document.getElementById('a_result');
            loading.style.background = 'url(images/loading.gif) #FFF no-repeat center';
            fetch('view/result.php',
    			{body:JSON.stringify({"name":name}) }
    		)
    		.then(res => res.text())
    		.then(d => {
    			console.log("done :",d);
    			loading.style.background = '';
    			document.getElementById('result').innerHTML = d;
    		})
    		.catch(err => {
    			console.log("erreur :",err);
    		});
    	}
    }
    j'ai pas teste, mais ca devrait etre ca
    (j'ai traduit la version jquery propose plus haut)
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  7. #7
    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 658
    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 658
    Billets dans le blog
    1
    Par défaut
    C'est un concours de nombre de lignes ?
    On peut aussi prendre en compte la rapidité de codage et la facilité de maintenance ?
    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 !

  8. #8
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2020
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2020
    Messages : 75
    Par défaut
    Voici mon code complet.
    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
    46
    47
    48
     
    var xhr = null; 
    function getXhr()
    {
         if(window.XMLHttpRequest)xhr = new XMLHttpRequest(); 
    else if(window.ActiveXObject)
      { 
      try{
         xhr = new ActiveXObject("Msxml2.XMLHTTP");
         } catch (e) 
         {
         xhr = new ActiveXObject("Microsoft.XMLHTTP");
         }
      }
    else 
      {
      alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
      xhr = false; 
      } 
    }
     
    function itemSearch(name) {
        if(name == '') {
            document.getElementById('a_result').innerHTML = '';
        }
        else
        {
            /* À cet endroit précis, on peut faire apparaître un message d'attente */
            var loading = document.getElementById('a_result');
    			loading.style.background = 'url(images/loading.gif) #FFF no-repeat center';
    	getXhr();
     
    	xhr.onreadystatechange = function()
    		{
    		 if(xhr.readyState == 4 && xhr.status == 200) {
    			         document.getElementById('a_result').style.background = '';
     
     
    		 document.getElementById('result').innerHTML=xhr.responseText;
     
    		 }
    		}
    	xhr.open("GET","view/result.php?name="+name,true);
    	xhr.send(null);
    }
    }
     
    // can you make a best a code en js?
    Merci de m'aider a faire de code un vrais code a jours.

  9. #9
    Membre Expert
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 491
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 491
    Par défaut
    je ne sais pas si c'est le meilleur code, mais j'aurai fais comme ca :
    Code javascript : 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
    function itemSearch(name) {
    	document.getElementById('a_result').innerHTML = '';
        if(name.trim() === '') {
    		return true;
    	}
    	document.getElementById('a_result').classList.add('loading');//style background = 'url(images/loading.gif) #fff no-repeat center; a mettre dans le css avec la class .loading
     
    	fetch(`view/result.php?name=${name}`)
    		.then(res => {
    			if(res.status !== 200) {
    				throw 'error fetching result';
    			} else {
    				return res.text();
    			}
    		})
    		.then(data => {
    			document.getElementById('a_result').classList.remove('loading');
    			document.getElementById('result').innerHTML = data;
    		})
    		.catch(err => {
    			console.log(err);
    		});
    }
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  10. #10
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2020
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2020
    Messages : 75
    Par défaut
    Merci de votre part.

    Par contre ma modification du code est pas a jour.
    Par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    document.getElementById('a_result').innerHTML = '';
    Est du js pure et non du jquery.

    Et la fonction ajax du jquery ou plugin de jquery est inexistante.

    Merci, j'ai vraiment besoin d'aide

  11. #11
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 198
    Par défaut
    Bonjour,
    Merci, j'ai vraiment besoin d'aide
    c'est dans jQuery API que tu trouveras tout ce qu'il est possible de faire en utlisant jQuery.

  12. #12
    Membre Expert
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 491
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 491
    Par défaut
    le code que tu proposes dans ta reponse #8 est du pure JS, j'ai donc "modernise" en pure JS
    jquery ne veut pas dire "moderne"
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  13. #13
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2020
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Février 2020
    Messages : 75
    Par défaut
    OK je comprends.

    Du coup en jquery sa donnerai quoi ?

Discussions similaires

  1. mettre a jour un code
    Par nyergk dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 1
    Dernier message: 16/09/2013, 12h30
  2. Code pour mettre a jour un sous-formulaire
    Par nianko dans le forum Access
    Réponses: 1
    Dernier message: 07/10/2010, 13h08
  3. Réponses: 6
    Dernier message: 10/04/2008, 13h43
  4. Réponses: 2
    Dernier message: 29/05/2006, 17h02
  5. Mettre a jour les Parametres dans une requete SQL
    Par Tartar Ukid dans le forum C++Builder
    Réponses: 7
    Dernier message: 31/03/2004, 13h51

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