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

jQuery Discussion :

$.getJSON() qui ne fonctionne pas sur tous les postes (pc, smartphone, tablette) [AJAX]


Sujet :

jQuery

  1. #1
    Débutant
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    886
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 886
    Points : 330
    Points
    330
    Par défaut $.getJSON() qui ne fonctionne pas sur tous les postes (pc, smartphone, tablette)
    bonjour

    je suis novice dans le domaine, j'ai mis en place un site web e-commerce
    chez moi tout fonctionnait, et pourtant certains clients (pas tous, me disent avoir du mal à mettre un article dans le panier)
    je leur proposais de redémarrer leur poste, ou de changer de navigateur, mais ça ne réglait pas forcément le problème
    ce soir, sans rien toucher, c'est sur mon pc que ça ne fonctionne pas (ie, et chrome) mais depuis mon smartphone (chrome) ça fonctionne !

    j'ai réduit le code au maximum, afin de trouver là ou ça coince :

    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
    	<script type="text/javascript">
     
     
     
    		function load_popup(id) {	 
     
     
    			var liste = "";
     
     
    			if (document.getElementById('taille_disponible_'+id) != null) {
     
    				liste = document.getElementById('taille_disponible_'+id).options[document.getElementById('taille_disponible_'+id).selectedIndex].value;
     
    				id = id + "&taille=" + liste;
     
    			}
    			else {
    				id = id + "&taille=Unique";
    			}
     
     
    			alert('on est ici 1');
     
     
     
     			$.getJSON("script/add_panier.php?id_article="+id, function(data) {
     
    				alert('on est ici 2');
     
    				// affichage du prix total de ce qu'il y a dans le panier
     
    				$('#panier_montant').html(data.total + ' €');
     
     
     			});
     
    			alert('on est ici 3');
     
     
    		}
     
     
     
    	</script>
    sur mon pc uniquement : "on est ici 1" qui s'affiche, alors que sur le smartphone tout fonctionne
    est ce que mon $.getJSON est devenu obsolète ? ou puis je remplacer par autre chose ?
    (j'ai supprimé quelques lignes de code, comme par exemple la récupération du json pour garder que le nécessaire)

    je vous remercie d'avance

  2. #2
    Modérateur

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

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 959
    Points : 44 122
    Points
    44 122
    Par défaut
    Bonjour,
    tout d'abord :
    je suis novice dans le domaine, j'ai mis en place un site web e-commerce
    tu doutes de rien !!!

    ensuite :
    lorsque l'on utilise jQuery on l'utilise, on ne mixe pas les écritures !

    De plus il te faut récupérer/gérer les éventuelles erreurs car ne fonction pas ne signifie pas grand chose.
    Ton code pourrait ressembler à
    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
    function load_popup(id) {
      const $elem = $("#" + id);
      let param;
     
      if ($elem.length) {
        param = id + "&taille=" + $elem.val();
      }
      else {
        param = id + "&taille=Unique";
      }
     
      $.getJSON("script/add_panier.php?id_article=" + param)
        .done(function(json) {
          $('#panier_montant')
            .html(json.total + ' €');
        })
        .fail(function(jqxhr, textStatus, error) {
          // ici on traite les erreurs, par exemple
          console.log(jqxhr + ", " + param);
        });
    sur mon pc uniquement : "on est ici 1" qui s'affiche, alors que sur le smartphone tout fonctionne
    tu devrais obtenir la séquence suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    'on est ici 1'
    'on est ici 3'
    // et enfin, à cause de l'asynchronisme, pas sûr que le mot existe d'ailleurs
    'on est ici 2'
    et pour finir :
    tu peux avoir une erreur sournoise ailleurs ou encore un soucis avec le cache.

  3. #3
    Débutant
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    886
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 886
    Points : 330
    Points
    330
    Par défaut
    salut
    merci pour ton retour, ça me permet d'apprendre des choses
    j'ai finalement compris d'où venait le problème à la base, car je précise que sans rien changer, ça ne fonctionnait plus

    c'était au niveau de ma déclaration :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
    j'ai remplacé par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script src = "https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

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

Discussions similaires

  1. Visual Studio - Erreur qui ne revient pas sur tous les postes
    Par chimere28 dans le forum Visual Studio
    Réponses: 9
    Dernier message: 08/10/2019, 19h43
  2. Réponses: 13
    Dernier message: 05/11/2013, 00h20
  3. [Toutes versions] Interroger access depuis Excel - Ne fonctionne pas sur tous les postes
    Par debdev dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 15/02/2012, 14h55
  4. [Déploiement] Pourquoi mon application ne fonctionne pas sur tous les postes ?
    Par Willthelegend dans le forum Windows Presentation Foundation
    Réponses: 3
    Dernier message: 08/09/2008, 20h34
  5. Réponses: 6
    Dernier message: 14/05/2008, 16h46

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