11521 sujets

JavaScript, DOM et API Web HTML5

Bonjour,
Projet abandonné car non réalisable.
Il me donne en html
<select class="Ref" name="Ref">

Je souhaite récupérer Ref sous forme de variable $Ref
C'est possible ? J'ai beaucoup de mal avec le Js
Merci de vos retours.
Modifié par Tintin75 (16 May 2016 - 18:16)
Salut,

Tu veux récupérer plusieurs valeurs dans plusieurs champs ?
Ton code est un peu louche, tu veux récupérer la valeur de ".Ref" mais tu as une ligne qui itère toutes les occurences ".Ref" (avec $.each()), ça laisse penser que tu en as plusieurs...
Donc c'est pas clair du tout, ça veut dire quoi : [le code js] "Il me donne en html" ?
C'est ce code qui génère le HTML ou pas ?

Et pourquoi tu veux toujours récupérer des variables sous forme de "$Ref" ? Je ne vois toujours pas l'intérêt, une variable (ici pour du PHP je suppose, on sait pas) peut se nommer comme on veut l'important est de savoir ce qu'elle contient Smiley ohwell

Sinon, pour récupérer une valeur d'un champ en jQuery par exemple c'est simple :
var ref_value = $('.Ref').val();

C'est tout...
Après si ta question est de la transmettre au PHP ou autre il va falloir être un tout petit peu plus clair Smiley biggrin

EDIT : pour finir, un petit Codepen serait un plus pour la compréhension...
Modifié par MatthieuR (16 May 2016 - 16:36)
Ma valeur renvoyé par le programme est Ref en javascript. Donc une seule valeur Ref.

Je veux récupérer la valeur en php sous la forme $Ref

Ton code : var ref_value = $('.Ref').val();

Me donne variable javascript Ref. Il faut convertir la variable en javascript en variable php.

Merci encore pour tes explications.

Après si ta question est de la transmettre au PHP ou autre il va falloir être un tout petit peu plus clair Smiley biggrin OUI
Modifié par Tintin75 (16 May 2016 - 18:01)
Tu postes ton formulaire ou pas ?
Parce que le meilleur moyen de transmettre des valeurs c'est de les faire passer par une requête POST (ou GET...) Smiley smile
Finalement tu as raison, il faut faire un get ou un post. Le but est d'éviter cette manip. Mon idée est mauvaise. Excuse moi de t'avoir fait perdre ton temps Smiley decu Merci pour l'explication.
Modifié par Tintin75 (16 May 2016 - 18:17)
Je pige pas pourquoi tu ne récupère pas simplement la valeur de chacun de tes select pour reconstituer en interne ta référence et faire la correspondance avec ta bdd ?

Cette récupération tu peux aussi bien la faire en Ajax ou en Php.
Au vu du code précédent je te suggèrerais en Ajax, mais suivant le traitement que tu veux faire sur ces valeurs il sera peut-être plus pertinent de traiter en php (selects + submit = $_POST).

De deux choses l'une, comme je vois les choses. Soit pour une raison obscure tu ne peux nous en dire plus sur la finalité de la demande, soit tu as une idée mais le fruit n'a pas totalement mûri. Du coup on tâtonne.

Par rapport à l'exemple de Matthieu. Celui-ci nous montre la réaction d'un traitement suite à une soumission. A la validation le message indique la valeur du second sélecteur. Mais il faut imaginer qu'il aurait été tout aussi aisé pour lui d'afficher la valeur du premier sélecteur. Même chose s'ils se multiplies comme des lapins.

Je pense qu'il aurait même pus incruster ce texte dans la première page sans provoquer son rafraichissement complet, je me trompe ?
Modifié par Greg_Lumiere (16 May 2016 - 21:31)
Je tâtonne mais Mathieu il faut transmettre la valeur var en javascript pour la récupérer en php.

Le code a changé complètement.

Je pense avoir trouvé la solution mais il faut que je test ce qui sera fait en fin de semaine vue que j'ai beaucoup de travail
Je tâtonne mais Mathieu il faut transmettre la valeur var en javascript pour la récupérer en php.

Le code a changé complètement.

Je pense avoir trouvé la solution mais il faut que je test ce qui sera fait en fin de semaine vue que j'ai beaucoup de travail
Ça devrait fonctionner vue que ça fonctionne pour un autre code.

J'ai la tête dans le guidon et je ne vois pas le truc aussi facilement que ça devrait t'être.
Modifié par Tintin75 (17 May 2016 - 02:45)
Tintin75 a écrit :
Ça devrait fonctionner vue que ça fonctionne pour un autre code.

J'ai la tête dans le guidon et je ne vois pas le truc aussi facilement que ça devrait t'être.
Heureux de l'entendre.

Bon courage et surtout, ne lâche pas le mors !
Le truc, c'est que je suis tout le temps dérangé et pour se concentrer c'est pas facile, j'ai juste le week-end pour être tranquille.
Matthieu, voici le code :

http://www.appelsiini.net/projects/chained

Je souhaite récupérer le résulta engine ( 4ème colonne résultat de l'ensemble des selects ).

Le code fonctionne parfaitement, sauf que j'ai engine ( ou Réf dans mon cas ) afficher et que je veux récupérer le résultat pour l'envoyer sur une autre page via une variable php.

Tu as une démo du code ici : http://www.appelsiini.net/projects/chained/demo.html
Modifié par Tintin75 (17 May 2016 - 20:06)
Oui, j'ai vu cette librairie mais ça ne change rien, il faut juste que tu postes ton formulaire et donc tu auras ta variable : $_POST['Ref'].
ok, tu peux me faire un exemple s'il te plait, car là je pédale dans la choucroute. Smiley decu

Je suis perdu avec les deux fichiers, html et js.

C'est une pure merveille ce code ultra pratique mais là je rame.

J'ai vue des cas ou l'on pouvait le faire tourner avec une bdd, des trucs de fou qui ne sont pas de mon niveau.

Il faut que je poste mon formulaire, mais c'est de l'ajax, j'ai rien à poster puisque ça se fait automatiquement. Tu sélectionnes et hop ça change automatiquement via ta sélection. Je sélectionne BMW et sa m'affiche les séries automatiquement. Je vois pas ou je peux faire un envoi. J'ai pigé ton idée, il faut envoyer la variable pour la récupérer, ce qui est logique en soit.

Dans mon code, j'ai bien form, il faut que post donc le résultat pour récupérer ma variable php, là je pige. Mais c'est la partie js, le fichier json.js qui me gêne. Greg_Lumiere, est aussi sur le coup Smiley murf

Je commence à piger ton idée. Smiley lol Si tu pouvais me faire un petit exemple ça serait sympa, car là je patauge un peu dans la semoule Smiley murf

C'est un diesel, c'est normal que ça soit long à chauffer Smiley sourire

Sur ce principe ? http://www.phpdebutant.org/article56.php
Modifié par Tintin75 (17 May 2016 - 20:32)
Bonsoir,

Si j'ai bien cerné la demande c'est un bout d'Ajax qui vienne en continuité de Chained qu'il faudrait :

- découper la valeur "engine" (valeur que tu appelle Ref) selon un schéma pour en déterminer la référence qui correspond à une valeur en Bdd.

- une fois celle-ci déterminée, une requête parallèle pour récupérer la valeur correspondante et l'afficher en live sur la page en cours (insertion d'un élément dans le DOM ?).

Je me trompe ?
Modifié par Greg_Lumiere (17 May 2016 - 21:03)
Tu peux poster ton formulaire via AJAX si ça te chante mais c'est inutile dans ton cas non ?
Pourquoi tu ne mets pas un bouton de soumission et hop c'est envoyé !
Je ne comprend pas ton souci... En plus tu as un exemple identique à ta demande sur la page de démo de chained.js, quand le dernier champ est rempli, un bouton "submit" s'affiche. Tu fais juste pareil !

Ça pourrait donner ça : http://codepen.io/korell/pen/vGwjog
Bien sûr il te faut une page traitement.php au même niveau qui traite les données reçus du formulaire Smiley ohwell
Merci pour l'exemple. Smiley smile

Le bouton, je l'avais vue en plus.

Le bouton envoi ma réf via php.Je n'ai juste qu'a faire un code de traitement pour l'envoi.

Ce qui me pertubait c'est le code en js, je n'ai pas l'habitude d'avoir ce code en parallèle. Je peux donc m'occuper de l'envoi en faisant tourner le fichier en js.

C'est plus clair maintenant pour moi.

Je revois ça demain. J'ai pigé ! Après réflexion, c'est possible pour mon usage. Smiley murf

Merci encore pour ton aide. Aujourd'hui, je ne vais pas affronter des lignes de code mais des grèves dans les transports, et là c'est moins drôle Smiley confus
Modifié par Tintin75 (18 May 2016 - 07:22)
Merci Matthieu, je viens de tester, ça fonctionne nickel chrome.

Je récupère bien ma Réf sous forme d'un $Ref dans ma page de traitement.php

Comme quoi, je me suis bien cassé la tête, alors que la solution était hyper simple.

Honte encore une fois à moi Smiley decu Smiley parking

Merci, encore pour ton aide et ta patience. Je lève mon verre à Matthieu Smiley merci
Modifié par Tintin75 (19 May 2016 - 13:58)