J'ai déjà essayé le .show, mais il ne m'affiche que la liste dans ma page sur la div et pas dans une popup...
tu pourrais juste développer un tout petit peu plus stp?
Merci d'avance
J'ai déjà essayé le .show, mais il ne m'affiche que la liste dans ma page sur la div et pas dans une popup...
tu pourrais juste développer un tout petit peu plus stp?
Merci d'avance
il te suffit de "styliser ton div" poru en faire un popin ... le popup c'est plus que hasbeen ...
il existe de plugins jquery de popins
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 !
ok avec l'aide d'un plug j'arrive à obtenir ma popup.
En testant un peu plus avant je m'apperçois que la première fois que je sélectionne une client dans ma popup il s'inscrit au bon endroit sans souci, mais dans le cas ou je me serais trompé de client et que je veux en sélectionner un autre, rien ne se passe, par contre l'alerte me donne bien la bonne sélection.
Vous pouvez me dire pourquoi, là je sèche....
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 $("#insClient").click(function() { $.ajax ( { method: "POST", // methode post ou get url: "mapage.php", // url de la page php de traitement qui retournera les données success: function(reponse) { $("#afficheListe").html( reponse ); $("#afficheListe").find("tr").css("cursor","pointer").on("click", function() { nom_client = $(this).children("#id_nomclient").text(); adresse_client = $(this).children("#id_adresseclient").text(); ville_client = $(this).children("#id_villeclient").text(); alert(nom_client + "\n" + adresse_client + "\n" + ville_client); $("#nom").replaceWith($(nom_client)); $("#adresse").replaceWith(adresse_client); $("#ville").replaceWith(ville_client); } ) } } ) })
Salut,
Tu as eu le bon réflexe en plaçant ton alerte pour vérifier. Logiquement le problème se situe donc après.
Pas bon les "replaceWidht". Tu remplace tout le bloc html par du texte => ton bloc n'existe plus. Donc au second click on ne peut pas trouver d'id correspondant. D'ailleurs tu devrais t'en apercevoir dans l'inspecteur des éléments de ton navigateur - il faut utiliser intensivement cet outil en développement quand tu modifie le dom avec javascript pour visualiser ce que tu fais - tu nique tous les input de ton formulaire
Alors qu'il vaudrait mieux simplement leur attribuer une valeur
Code : Sélectionner tout - Visualiser dans une fenêtre à part $("#nom").val(nom_client);
Salut,
Oui effectivement, je me suis rendu compte de ça hier soir et j'ai modifié le code avec le .val...
Là ça fonctionne comme je le souhaite, je dois encore tester l'envoi du formulaire pour voir si il garde toutes les données.
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 $("#insClient").click(function() { $.ajax ( { method: "POST", // methode post ou get url: "mapage.php", // url de la page php de traitement qui retournera les données success: function(reponse) { $("#afficheListe").css("visibility", "visible"); $("#afficheListe").html( reponse ); $("#afficheListe").find("tr").css("cursor","pointer").on("click", function() { nom_client = $(this).children("#id_nomclient").text(); adresse_client = $(this).children("#id_adresseclient").text(); ville_client = $(this).children("#id_villeclient").text(); $("#nom").val(nom_client); $("#adresse").val(adresse_client); $("#ville").val(ville_client); $("#afficheListe").css("visibility", "hidden"); } ) } } ) })
Reste maintenant l'ajout des articles dans la facture, mais le principe devrait être le même, j'ai juste besoins de voir comment récupérer dans la popup plusieurs articles avec des cases à cochées et ajouter le nombre de lignes de formulaires en fonction.
Merci encore pour ton aide
Salut,
Je viens de faire la partie finale de cette facture et il reste un bug que je n'arrive pas à comprendre pour l'heure...
Voici le code html de mes lignes de facture à remplir
J'ai mis deux lignes de base ensuite le comptable pourra ajouter des lignes au besoin.
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81 <table width="100%"> <tbody> <tr> <th width="10px"> <img id="insArticle" src='../../images/icon_add.png' width='16' height='16'> </th> <th width="250px"> Désignation </th> <th width="30"> Unité </th> <th width="30"> Quantité </th> <th width="30"> Prix </th> <th width="30"> TVA </th> <th width="30"> Total </th> </tr> <tr id="facRow"> <td width="10px"> <img id="insArticle" src='../../images/icon_add.png' width='16' height='16'> </td> <td width="250px"> <input id="designation" type="text" class="facBig" /> </td> <td width="30"> <input id="unite" type="text" class="facSmall"/> </td> <td width="30"> <input id="quantite" type="text" class="facSmall" /> </td> <td width="30"> <input id="prixUnite" type="text" class="facSmall" /> </td> <td width="30"> <input id="taxe" type="text" class="facSmall" /> </td> <td width="30"> <input id="totLine" type="text" class="facSmall" /> </td> </tr> <tr id="facRow"> <td width="10px"> <img id="insArticle" src='../../images/icon_add.png' width='16' height='16'> </td> <td width="250px"> <input id="designation" type="text" class="facBig" /> </td> <td width="30"> <input id="unite" type="text" class="facSmall"/> </td> <td width="30"> <input id="quantite" type="text" class="facSmall" /> </td> <td width="30"> <input id="prixUnite" type="text" class="facSmall" /> </td> <td width="30"> <input id="taxe" type="text" class="facSmall" /> </td> <td width="30"> <input id="totLine" type="text" class="facSmall" /> </td> </tr> <tr> <td colspan="6" class="right"> Total facturé </td> <td> <input id="tot" type="text" class="facSmall" readonly="readonly" value="10'000.00"/> </td> </tr> </tbody> </table>
Avec l’icône à gauche on peut récupérer un article dans une popup comme pour le client précédemment.
A ce stade, je souhaite calculer le total de chaque ligne en tenant compte du nombre de pièces et du prix unitaire et cela pour chaque lignes.
Le code suivant fait bien une partie du travail, mais sur toutes les lignes en même temps. du coup je comprends plus...
Merci d'avance pour votre aide...
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 //================================================= // Calcule et affichage du total de la facture. //================================================= $("tr[id='facRow']").each(function() { $("input[id='quantite']").focusout(function() { var quantite = $(this).val(); alert(quantite); $("input[id='prixUnite']").focusout(function(e) { var prixUnite = $(this).val(); var totLine = quantite * prixUnite; $("input[id='totLine']").val(totLine + ".00"); }); }); });
Salut,
Un id doit être unique dans une page...
Salut,
ça je comprends bien, mais peux-tu m’aiguillé pour programmer ce qui suit (ça fait 12 heures que je tourne en rond sur ce problème)
Ligne de facture 1
Designation => Unité => Quantité => Prix HT => TVA => Total ligne
Ligne facture 2
idem
Ligne facture 3
idem mais ajouter plus tard par JQuery.
Total facturé
TotalLigne1 + TotalLigne2
J'ai essayé de mettre des N° après mes ID puis dans le code :
puis dans la boucle
Code : Sélectionner tout - Visualiser dans une fenêtre à part var ligneNum = 0;mais apparemment ça ne fonctionne pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 ligneNum ++; var quantite = $("#quantite_"+ligneNum).val();
Par cette réponse je ne demande pas la solution toute cuite, mais juste une base de départ pour continuer à apprendre ce JQuery.
Merci d'avance et bonne soirée
C'est un problème de html, pas de jquery.
Pour des blocs qui se répètent dans une page tu peux utiliser des classes, des attributs data, des input etc mais pas des id. D'ailleurs tu as des input alors pourquoi ne pas se servir des attributs "name" (que bizarrement tu n'utilise pas) pour les cibler plutôt qu'un id. On peut très bien cibler un bloc sans qu'il ait d'id, faut pas en mettre partout !
Salut,
Après des heures de recherche et de lecture intensive, j'ai trouvé une piste à suivre, malheureusement c'est en JQuery 1.5
du coup dès le départ ça plante sous 1.11.3 que j'utilise pour le reste...
Voici donc le début que je voudrais convertir de 1.5 à 1.11
J'ai bien essayé de faire ceci, mais sans succès et je ne comprends pas pourquoi... Selon la doc le .live est remplacé par .on()
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 $("#fac_table").live({ blur: function() { ... ... ... } });
Voilà si tu pouvais déjà me donner un conseil pour ça, je pense pouvoir résoudre la suite...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 $("#fac_table").on("blur", function() { ... ... ... });
Merci d'avance
Le problème est réglé, mon application fonctionne, merci pour votre aide...
Pour le dernier post, il s'agissait de mettre les différents paramètres dans l'ordre...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 $(document).on("blur", "#fac_table", function () { ... ... ... });
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager