Comment faire passer une variable d'une fonction a une autre

Résolu/Fermé
flexi2202 Messages postés 3795 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 21 avril 2024 - Modifié le 4 févr. 2023 à 11:34
flexi2202 Messages postés 3795 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 21 avril 2024 - 5 févr. 2023 à 19:36

bonjour a tous

je continue a faire mon petit bonhomme de chemin avec javascript et meme si j'ai super dur

je continue a persister

je peux dire que grace a ce forum j'ai vraiment beaucoup evolué mais je beug encore sur des petites choses

Mon defit du jour est de faire passer une variable d'une fonction dans une autre fonction 

pour ce faire je m'attaque au widjet de mondial relay

par defaut il nous donne un pays et un code postal 

je souhaiterais donc pouvoir avoir ces valeurs par defaut lorsque l'utilisateur entrera sa ville et son pays 

Par exemple

si l'utilisateur choisi charleroi  et belgique,que la valeur par defaut soit charleroi et belgique

Pour l'exemple je commence par le code postal

voici la partie html

 <input class="form-control" type="text" name="cp" value="" id="cp"  required="required" />

ensuite la partie avec la fonction qui va recuperer l'id

            var input ;
//le code postal
$(function(){
  $("#cp").on("input",function(){
    input=this.value;
    console.log(input);

  });
});

ensuite viens la fonction de mondial Relais  dans laquelle je souhaiterais lui faire passer la variable input

j'ai essaye ce code , cela fonctionne mais alors mon widjet ne s'affiche plus correctement 

le widjet est appelle comme ceci

	<div id="Zone_Widget"></div>
            var input ;
//le code postal
$(function(){
  $("#cp").on("input",function(){
    input=this.value;
    console.log(input);

            
                   
               
                // Initialiser le widget après le chargement complet de la page
                $(document).ready(function () {  console.log(input);
                    // Charge le widget dans la DIV d'id "Zone_Widget" avec les paramètres indiqués
                    $("#Zone_Widget").MR_ParcelShopPicker({
                        //
                        // Paramétrage de la liaison avec la page.
                        //
                        // Selecteur de l'élément dans lequel est envoyé l'ID du Point Relais (ex: input hidden)
                        Target: "#Target_Widget",
                        // Selecteur de l'élément dans lequel est envoyé l'ID du Point Relais pour affichage
                        TargetDisplay: "#TargetDisplay_Widget",
                        // Selecteur de l'élément dans lequel sont envoysé les coordonnées complètes du point relais
                        TargetDisplayInfoPR: "#TargetDisplayInfoPR_Widget",
                       
                        //
                        // Paramétrage du widget pour obtention des point relais.
                        //
                        // Le code client Mondial Relay, sur 8 caractères (ajouter des espaces à droite)
                        // BDTEST est utilisé pour les tests => un message d'avertissement apparaît
                        Brand: "BDTEST  ",
                        // Pays utilisé pour la recherche: code ISO 2 lettres.
                        Country: "BE",
                        // Code postal pour lancer une recherche par défaut
                        PostCode: "6000",
                        // Mode de livraison (Standard [24R], XL [24L], XXL [24X], Drive [DRI])
                        ColLivMod: "24R",
                        // Nombre de Point Relais à afficher
                        NbResults: "7",
                        //
                        // Paramétrage d'affichage du widget.
                        //
                        // Activer l'affichage Responsive.
                        Responsive: true,
                        // Afficher les résultats sur une carte?
                        ShowResultsOnMap: false,
                        // Afficher les informations du point relais à la sélection sur la carte?
                        DisplayMapInfo: true,
                        // Fonction de callback déclenché lors de la selection d'un Point Relais
                        OnParcelShopSelected:
                            // Fonction de traitement à la sélection du point relais.
                            // Remplace les données de cette page par le contenu de la variable data.
                            // data: les informations du Point Relais
                            
                            function (data) {
                                //span
                                //	$("#cb_ID").html(data.ID);
                                //	$("#cb_Nom").html(data.Nom);
                                //$("#cb_Adresse").html(data.Adresse1 + ' ' + data.Adresse2);
                                //	$("#cb_Adresse").html(data.Adresse1);
                                //	$("#cb_CP").html(data.CP);
                                //	$("#cb_Ville").html(data.Ville);
                                //	$("#cb_Pays").html(data.Pays);
                                //input hidden
                                $("[name='IDmondial']").val(data.ID);
                                $("[name='NOMmondial']").val(data.Nom);
                                //$("[name='ADRESSEmondial']").val(data.Adresse1 + ' ' + data.Adresse2);
                                $("[name='ADRESSEmondial']").val(data.Adresse1);
                                $("[name='CPmondial']").val(data.CP);
                                $("[name='VILLEmondial']").val(data.Ville);
                                $("[name='PAYSmondial']").val(data.Pays);
                            },
                        //
                        // Autres paramétrages.
                        //
                        //Filtrer les Points Relais selon le Poids (en grammes) du colis à livrer
                        //Weight: "2000",
                        // Spécifier le nombre de jours entre la recherche et la dépose du colis dans notre réseau
                        // SearchDelay: "3",
                        //Limiter la recherche des Points Relais à une distance maximum
                        //SearchFar: "",
                        // Liste des pays selectionnable par l'utilisateur pour la recherche: codes ISO 2 lettres
                        AllowedCountries: "FR,BE,NL,LU",
                        // Force l'utilisation de Google Map si la librairie est présente?
                        // EnableGmap: true,
                        // Activer la recherche de la position lorsque le navigateur de l'utilisateur le supporte?
                        // EnableGeolocalisatedSearch: "true",
                        // Spécifier l'utilisation de votre feuille de style CSS lorsque vous lui donnez la valeur "0"
                        // CSS: "1",
                        // Activer le zoom on scroll sur la carte des résultats?
                        //,MapScrollWheel: "false",
                        // Activer le mode Street View sur la carte des résultats (attention aux quotas imposés par Google)
                        // MapStreetView: "false"
                    });
                });

  });
});

9 réponses

jordane45 Messages postés 38150 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 29 avril 2024 4 651
4 févr. 2023 à 14:10

Bonjour ,

Comme bien souvent, la solution se trouve avant tout dans la documentation.

Pour ton plugin, regarde ici : 

https://widget.mondialrelay.com/parcelshop-picker/v4_0/codesamples/Sample-LightImplementation.aspx#doc_methodes

regarde par exemple les deux méthodes : MR_SetParams et éventuellement ensuite  MR_DoSearch


1
jordane45 Messages postés 38150 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 29 avril 2024 4 651
5 févr. 2023 à 18:08
//je recupere le cp
 $("#cp").on("input", function() {
   doSearch();
 });
 
  	//je recupere le pays
 	$("#pays").on("input", function() {
 		doSearch();
 	});
 
function doSearch(){
  let pays =	$("#pays").val();
  let cp = $("#cp").val();
  
  //on défini des valaurs par défaut si les champs ne sont pas remplis :
  // pour ça, utilisation de l'écriture TERNAIRE
  pays = typeof(pays) !='undefined' && pays.length() > 1 ? pays : "BE";
  cp = typeof(cp) !='undefined' && cp.length() > 4 ? pays : 6000;
  
  $("#Zone_Widget").trigger("MR_DoSearch", [cp, pays]); //change le code postal  et le pays
}

1
flexi2202 Messages postés 3795 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 21 avril 2024 187
5 févr. 2023 à 18:28

Un tres grand merci jordane 

comme toujours tu as une solution a tout 

malheuresuement j'ai un message d'erreur

avec cette ligne

je comprends ce que tu as voulu faire 

car d'apres la documentatio le ? serait un if

 pays = typeof(pays) !='undefined' && pays.length() > 1 ? pays : "BE";

Uncaught TypeError: pays.length is not a function

0
jordane45 Messages postés 38150 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 29 avril 2024 4 651 > flexi2202 Messages postés 3795 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 21 avril 2024
5 févr. 2023 à 19:21

Oui c'est un IF/ELSE

Je veux tester que la variable existe et qu'il y a bien une valeur dedans. Si c'est le cas, on garde sa valeur.. sinon on lui met une valeur par défaut ( ici BE )

L'erreur vient du .length()  ... il faut retirer les parenthèses  .legnth

1
flexi2202 Messages postés 3795 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 21 avril 2024 187
Modifié le 4 févr. 2023 à 14:43

bonjour Jordane

Merci pour le lien et la reponse

mais comme a chaque fois les explications ou presque els explications sur la documentation ont ete realise pour des experts

en fait ce qui m'interesse c'est de remplacer le 59510 et FR par ce que l'utilisateur entrera au clavier dans mon formulaire 

ce morceau de code je l'avais vu 

$("#Zone_Widget").trigger("MR_DoSearch",[59510,"FR"]);  

dont on retrouve une similitude dans le code posté

car si je remplace 

 $("#Zone_Widget").MR_ParcelShopPicker

par 

$("#Zone_Widget").trigger("MR_DoSearch",[59510,"FR"]); 

cela ne regle  pas mon soucis 

j'ai essaye ceci 

               //<![CDATA[
               
               
               //le code postal

                // Initialiser le widget après le chargement complet de la page
                $(document).ready(function () {
                     //console.log(input);
                    // Charge le widget dans la DIV d'id "Zone_Widget" avec les paramètres indiqués
                             $("#Zone_Widget").MR_ParcelShopPicker({
                                               //
                        // Paramétrage de la liaison avec la page.
                        //
                        // Selecteur de l'élément dans lequel est envoyé l'ID du Point Relais (ex: input hidden)
                        Target: "#Target_Widget",
                        // Selecteur de l'élément dans lequel est envoyé l'ID du Point Relais pour affichage
                        TargetDisplay: "#TargetDisplay_Widget",
                        // Selecteur de l'élément dans lequel sont envoysé les coordonnées complètes du point relais
                        TargetDisplayInfoPR: "#TargetDisplayInfoPR_Widget",
                       
                        //
                        // Paramétrage du widget pour obtention des point relais.
                        //
                        // Le code client Mondial Relay, sur 8 caractères (ajouter des espaces à droite)
                        // BDTEST est utilisé pour les tests => un message d'avertissement apparaît
                        Brand: "BDTEST  ",
                        // Pays utilisé pour la recherche: code ISO 2 lettres.
                        Country: "FR",
                        // Code postal pour lancer une recherche par défaut
                        PostCode: "59510",
                       // PostCode: input ,
                        // Mode de livraison (Standard [24R], XL [24L], XXL [24X], Drive [DRI])
                        ColLivMod: "24R",
                        // Nombre de Point Relais à afficher
                        NbResults: "7",
                        //
                        // Paramétrage d'affichage du widget.
                        //
                        // Activer l'affichage Responsive.
                        Responsive: true,
                        // Afficher les résultats sur une carte?
                        ShowResultsOnMap: false,
                        // Afficher les informations du point relais à la sélection sur la carte?
                        DisplayMapInfo: true,
                        // Fonction de callback déclenché lors de la selection d'un Point Relais
                        OnParcelShopSelected:
                            // Fonction de traitement à la sélection du point relais.
                            // Remplace les données de cette page par le contenu de la variable data.
                            // data: les informations du Point Relais
                            
                            function (data) {
                                //span
                                //	$("#cb_ID").html(data.ID);
                                //	$("#cb_Nom").html(data.Nom);
                                //$("#cb_Adresse").html(data.Adresse1 + ' ' + data.Adresse2);
                                //	$("#cb_Adresse").html(data.Adresse1);
                                //	$("#cb_CP").html(data.CP);
                                //	$("#cb_Ville").html(data.Ville);
                                //	$("#cb_Pays").html(data.Pays);
                                //input hidden
                                $("[name='IDmondial']").val(data.ID);
                                $("[name='NOMmondial']").val(data.Nom);
                                //$("[name='ADRESSEmondial']").val(data.Adresse1 + ' ' + data.Adresse2);
                                $("[name='ADRESSEmondial']").val(data.Adresse1);
                                $("[name='CPmondial']").val(data.CP);
                                $("[name='VILLEmondial']").val(data.Ville);
                                $("[name='PAYSmondial']").val(data.Pays);
                            },
                        //
                        // Autres paramétrages.
                        //
                        //Filtrer les Points Relais selon le Poids (en grammes) du colis à livrer
                        //Weight: "2000",
                        // Spécifier le nombre de jours entre la recherche et la dépose du colis dans notre réseau
                        // SearchDelay: "3",
                        //Limiter la recherche des Points Relais à une distance maximum
                        //SearchFar: "",
                        // Liste des pays selectionnable par l'utilisateur pour la recherche: codes ISO 2 lettres
                        AllowedCountries: "FR,BE,NL,LU",
                        // Force l'utilisation de Google Map si la librairie est présente?
                        // EnableGmap: true,
                        // Activer la recherche de la position lorsque le navigateur de l'utilisateur le supporte?
                        // EnableGeolocalisatedSearch: "true",
                        // Spécifier l'utilisation de votre feuille de style CSS lorsque vous lui donnez la valeur "0"
                        // CSS: "1",
                        // Activer le zoom on scroll sur la carte des résultats?
                        //,MapScrollWheel: "false",
                        // Activer le mode Street View sur la carte des résultats (attention aux quotas imposés par Google)
                        // MapStreetView: "false"
                       
                    });
         $("#Zone_Widget").trigger("MR_DoSearch",[6000,"BE"]); 
                });
                

 //]]> 
0
jordane45 Messages postés 38150 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 29 avril 2024 4 651
4 févr. 2023 à 16:15

Je t'ai donné deux méthodes ... en te disant .. déjà l'une .... puis  éventuellement la seconde...

Ce qui sous entend que la première à essayer de mettre en pratique ... c'est bien la première.... c'est pas la seconde.... :-)

En gros , ça devrait ressembler à ça :

$(document).ready(function () {  // Quand la page est chargée ...


    // Initialiser le widget après le chargement complet de la page
    // !! NE PAS TOUCHER A CETTE PORTION CODE PAR LA SUITE !! //
    // Charge le widget dans la DIV d'id "Zone_Widget" avec les paramètres indiqués
    $("#Zone_Widget").MR_ParcelShopPicker({
        //
        // Paramétrage de la liaison avec la page.
        //
        // Selecteur de l'élément dans lequel est envoyé l'ID du Point Relais (ex: input hidden)
        Target: "#Target_Widget",
        // Selecteur de l'élément dans lequel est envoyé l'ID du Point Relais pour affichage
        TargetDisplay: "#TargetDisplay_Widget",
        // Selecteur de l'élément dans lequel sont envoysé les coordonnées complètes du point relais
        TargetDisplayInfoPR: "#TargetDisplayInfoPR_Widget",
       
        //
        // Paramétrage du widget pour obtention des point relais.
        // Le code client Mondial Relay, sur 8 caractères (ajouter des espaces à droite)
        // BDTEST est utilisé pour les tests => un message d'avertissement apparaît
        Brand: "BDTEST  ",
        // Pays utilisé pour la recherche: code ISO 2 lettres.
        Country: "BE",
        // Code postal pour lancer une recherche par défaut
        PostCode: "6000",
        // Mode de livraison (Standard [24R], XL [24L], XXL [24X], Drive [DRI])
        ColLivMod: "24R",
        // Nombre de Point Relais à afficher
        NbResults: "7",
        //
        // Paramétrage d'affichage du widget.
        // Activer l'affichage Responsive.
        Responsive: true,
        // Afficher les résultats sur une carte?
        ShowResultsOnMap: false,
        // Afficher les informations du point relais à la sélection sur la carte?
        DisplayMapInfo: true,
        // Fonction de callback déclenché lors de la selection d'un Point Relais
        OnParcelShopSelected:
            // Fonction de traitement à la sélection du point relais.
            // Remplace les données de cette page par le contenu de la variable data.
            // data: les informations du Point Relais
            
            function (data) {
                //span
                //	$("#cb_ID").html(data.ID);
                //	$("#cb_Nom").html(data.Nom);
                //$("#cb_Adresse").html(data.Adresse1 + ' ' + data.Adresse2);
                //	$("#cb_Adresse").html(data.Adresse1);
                //	$("#cb_CP").html(data.CP);
                //	$("#cb_Ville").html(data.Ville);
                //	$("#cb_Pays").html(data.Pays);
                //input hidden
                $("[name='IDmondial']").val(data.ID);
                $("[name='NOMmondial']").val(data.Nom);
                //$("[name='ADRESSEmondial']").val(data.Adresse1 + ' ' + data.Adresse2);
                $("[name='ADRESSEmondial']").val(data.Adresse1);
                $("[name='CPmondial']").val(data.CP);
                $("[name='VILLEmondial']").val(data.Ville);
                $("[name='PAYSmondial']").val(data.Pays);
            },
        //
        // Autres paramétrages.
        //Filtrer les Points Relais selon le Poids (en grammes) du colis à livrer
        //Weight: "2000",
        // Spécifier le nombre de jours entre la recherche et la dépose du colis dans notre réseau
        // SearchDelay: "3",
        //Limiter la recherche des Points Relais à une distance maximum
        //SearchFar: "",
        // Liste des pays selectionnable par l'utilisateur pour la recherche: codes ISO 2 lettres
        AllowedCountries: "FR,BE,NL,LU",
        // Force l'utilisation de Google Map si la librairie est présente?
        // EnableGmap: true,
        // Activer la recherche de la position lorsque le navigateur de l'utilisateur le supporte?
        // EnableGeolocalisatedSearch: "true",
        // Spécifier l'utilisation de votre feuille de style CSS lorsque vous lui donnez la valeur "0"
        // CSS: "1",
        // Activer le zoom on scroll sur la carte des résultats?
        //,MapScrollWheel: "false",
        // Activer le mode Street View sur la carte des résultats (attention aux quotas imposés par Google)
        // MapStreetView: "false"
    });
    // --- FIN INITIALISATION DU WIDGET ---------//
    
    //------------------------------------------------------------------------------//
    // +++++++  ICI .. tu codes pour prendre en compte les modifications du formulaire  +++++ //
    //------------------------------------------------------------------------------//
    // Lorsque l'utilisateur modifie le contenu du champ CP :
    $("#cp").on("input",function(){
      let cp = $(this).val(); //tu fais du jquery.. autant le faire partout !
      console.log('cp',cp);
      $("#Zone_Widget").trigger("MR_SetParams",{PostCode: cp })   //change le code postal  
    });
});

1
flexi2202 Messages postés 3795 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 21 avril 2024 187
Modifié le 4 févr. 2023 à 18:02

Merci jordane pour le code 

Mais malheureusement celui ci retourne bien la valeur de cp dans la sonsole mais pas dans le champ de mondial relay

j'ai donc repris l'autre methode 

mais j'ai une erreur de syntaxe que je ne comprends pas 

pour commencer voici mon code 

   $("#cp").on("input",function(){
      let cp = $(this).val(); //tu fais du jquery.. autant le faire partout !
      console.log('cp',cp);
     // $("#Zone_Widget").trigger("MR_SetParams",{PostCode: cp })   //change le code postal  
      $("#Zone_Widget").trigger("MR_DoSearch",[PostCode: cp ,"FR"]);
    });

vient ensuite le message d'erreur dans la console 

Uncaught SyntaxError: missing ] after element list

qui me dit qu'il manque quelque chose dans la ligne 

un crochet ou une virgule 

Mais franchement mieux que du copier coller de chez mondail relay je sais pas faire 

0
flexi2202 Messages postés 3795 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 21 avril 2024 187
4 févr. 2023 à 18:09

ah de cette facon cela fonctionne apparement 

  $("#cp").on("input",function(){
      let cp = $(this).val(); //tu fais du jquery.. autant le faire partout !
      console.log('cp',cp);
     // $("#Zone_Widget").trigger("MR_SetParams",{PostCode: cp })   //change le code postal  
      $("#Zone_Widget").trigger("MR_DoSearch",[ cp ,"FR"]);
    });
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
flexi2202 Messages postés 3795 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 21 avril 2024 187
Modifié le 4 févr. 2023 à 18:34

par contre lorsque je veux aussi recuperer le pays je dois avoir une erreur dans mes fonctions 

Pourtant d'apres ce que j'ai pu remarquer je peux mettre une fonction dans une autre fonction 

 //je recupere le cp
 $("#cp").on("input", function() {
 	let cp = $(this).val();
 	console.log('cp', cp);

 	//je recupere le pays
 	$("#pays").on("input", function() {
 		let pays = $(this).val();
 		console.log('pays', pays);

 		$("#Zone_Widget").trigger("MR_DoSearch", [cp, pays]); //change le code postal  et le pays
 	});
 });
0
flexi2202 Messages postés 3795 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 21 avril 2024 187
Modifié le 4 févr. 2023 à 18:42

Meme en modifiant cette ligne 

 $("#Zone_Widget").trigger("MR_DoSearch",[cp,"BE"]);  

j'ai toujours le drapeau francais ; ce qui signifie que le choix par defaut est toujours la france 

meme si dans le code du plugin j'indique ceci

Country: "",

par contre si j'indique ceci  dans le code de la fonction du plgin 

j'ai le drapeau belge ce qui indique que j'ai bien cette fois par defaut la Belgique

Country: "BE",
0
flexi2202 Messages postés 3795 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 21 avril 2024 187
4 févr. 2023 à 18:55

En fait le drapeau ne sert a rien 

par contre le code suivant semble fonctionner 

 //je recupere le cp
 $("#cp").on("input", function() {
 	let cp = $(this).val();
 	console.log('cp', cp);

 	//je recupere le pays
 	$("#pays").on("input", function() {
 		let pays = $(this).val();
 		console.log('pays', pays);

 		$("#Zone_Widget").trigger("MR_DoSearch", [cp, pays]); //change le code postal  et le pays
 	});
 });

je continue les tests demain 

encore merci Jordane

0
flexi2202 Messages postés 3795 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 21 avril 2024 187
Modifié le 5 févr. 2023 à 12:58

bonjour

Voila j'ai fini mes tests et la seule maniere pour que cela fonctionne est de recuperer cp et pays lors de la validation des donnees

Car en temps reel cela ne fonctionne pas trop bien 

voici ce qui se passe par exemple avec ce code 

//je recupere le cp
 $("#cp").on("input", function() {
 	let cp = $(this).val();
 	console.log('cp', cp);

 	//je recupere le pays
 	$("#pays").on("input", function() {
 		let pays = $(this).val();
 		console.log('pays', pays);

 		$("#Zone_Widget").trigger("MR_DoSearch", [cp, pays]); //change le code postal  et le pays
 	});
 });

lorsque je rentre les donnees du code postal et du pays 

cela fonctionne 

Mais si je modifie le code postal 

le code postal ne se modifie que si je modifie le pays 

Bref cela risque de mettre le bazar

ou alors je dois passer mon temps avec des conditions du style

on entre d'abord le code postal puis le pays

si on modifie le code postale on doit remettre le pays 

le seul moyen que j'ai trouve c'est de recuperer pays et cp lors de al validation de ms deux input dans mon formulaire 

0
jordane45 Messages postés 38150 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 29 avril 2024 4 651
5 févr. 2023 à 16:54

Ben il faut séparer la détection de la saisie sur le code postal de la saisie sur la ville...

Toi tu as regroupé tout le code dans celui du code postal...

1
flexi2202 Messages postés 3795 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 21 avril 2024 187
Modifié le 5 févr. 2023 à 17:21

bonjour Jordane 

Merci pour l'aide

j'ai essaye ce code mais de cette facon 

Dans le champ input de cp apparait bien le code postal puis BE par exemple 

j'ai essaye avec deux codes differents 

 //je recupere le cp
 $("#cp").on("input", function() {
 	let cp = $(this).val();
 	console.log('cp', cp);
 		$("#Zone_Widget").trigger("MR_DoSearch", [cp ,""]); //change le code postal  et le pays
 	});


 	//je recupere le pays
 	$("#pays").on("input", function() {
 		let pays = $(this).val();
 		console.log('pays', pays);

 		$("#Zone_Widget").trigger("MR_DoSearch", ["",pays]); //change le code postal  et le pays
 	});
 //je recupere le cp
 $("#cp").on("input", function() {
 	let cp = $(this).val();
 	console.log('cp', cp);
 		$("#Zone_Widget").trigger("MR_DoSearch", [cp ]); //change le code postal  et le pays
 	});


 	//je recupere le pays
 	$("#pays").on("input", function() {
 		let pays = $(this).val();
 		console.log('pays', pays);

 		$("#Zone_Widget").trigger("MR_DoSearch", [pays]); //change le code postal  et le pays
 	});

puis j'ai essaye avec ceci et dans ce cas de figure rien ne s'indique dans les champs input

 //je recupere le cp
 $("#cp").on("input", function() {
 	let cp = $(this).val();
 	console.log('cp', cp);
 		//$("#Zone_Widget").trigger("MR_DoSearch", [cp ,""]); //change le code postal  et le pays
 		$("#Zone_Widget").trigger("MR_SetParams",{PostCode: cp}) 
 	});


 	//je recupere le pays
 	$("#pays").on("input", function() {
 		let pays = $(this).val();
 		console.log('pays', pays);

 		//$("#Zone_Widget").trigger("MR_DoSearch", ["",pays]); //change le code postal  et le pays
 		$("#Zone_Widget").trigger("MR_SetParams",{Country : pays}) 
 	});
0
flexi2202 Messages postés 3795 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 21 avril 2024 187
5 févr. 2023 à 19:36

Ah d'accord merci pour la correction je n'ai plus d'erreur

Mais il ne refuse de prendre les donnees que j'introduis dans les champs input

il prends les valeurs par defaut 

Par contre si je mets en commentaire les lignes avec els valeurs par defauts , tout semble bien fonctionner 

encore un super grand merci jordane 

0