Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > jQuery
jQuery Forum d'entraide sur le framework jQuery. Avant de poster : Tutoriels jQuery, FAQ jQuery, Tous les tutoriels JavaScript, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/11/2010, 12h59   #1
Candidat au titre de Membre du Club
 
Kevin D'ORANGE
Inscription : août 2009
Messages : 33
Détails du profil
Informations personnelles :
Nom : Kevin D'ORANGE
Localisation : France, Doubs (Franche Comté)

Informations forums :
Inscription : août 2009
Messages : 33
Points : 13
Points : 13
Envoyer un message via MSN à Oragon Efreet Envoyer un message via Skype™ à Oragon Efreet
Par défaut Comment obtenir l'ensemble des 'input' correspondant à un 'form'

Bonjour,

Je début tout juste en JQuery. J'ai découvert il y a quelques heures.
J'aimerai savoir comment obtenir l'ensemble des élément input de tous types correspondant à un formulaire donné.
Par 'correspondant', j'entend 'englobé à n'importe quelle profondeur dans le formulaire en question'

Au début l'idée simple était de faire :
Code :
$('#monFormulaire :input')
Cependant, ce que je veux comme point de départ, c'est un objet JQuery de mon formulaire référencé par $(this).
De plus, je ne peux pas faire :
Code :
$('#'+$(this).attr('id')+' :input')
Si tant est que cela fonctionne, car rien ne garanti de toutes manières que mon formulaire possède un id.

Du coup je ne vois effectivement pas comment faire


Autre question, est-ce que quelqu'un pourrait m'expliquer pourquoi, en supposant le code suivant :

Code :
1
2
<input type="text" name="texteA" value="contenuA" />
<input type="text" name="texteB" value="contenuB" />
l'instruction suivante :
Va me générer :
Code :
texteA=contenuA&texteB=contenuB
?
Je comprends tout à fait la fonction $.param. Mais je ne comprends pas comment elle arrive à générer ce texte en partant d'un ensemble d'élements input (et non d'un tableau du style name:value)


Merci bien et bonne journée
Oragon Efreet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2010, 13h05   #2
Rédacteur
 
Avatar de Arnaud F.
 
Homme Arnaud Feltz
Développeur .NET
Inscription : août 2005
Messages : 5 204
Détails du profil
Informations personnelles :
Nom : Homme Arnaud Feltz
Âge : 25
Localisation : France

Informations professionnelles :
Activité : Développeur .NET
Secteur : Transports

Informations forums :
Inscription : août 2005
Messages : 5 204
Points : 6 113
Points : 6 113
Bonjour,

pour le faire de manière récursive, il faut passer par "find" :

Code :
var inputs = $(this).find("input");
[EDIT] Pour comprendre $.param, je vous encourage à lire la documentation de .serialize() qui explique très bien pourquoi on a ce comportement
__________________
C'est par l'adresse que vaut le bûcheron, bien plus que par la force. Homère

Installation de Code::Blocks sous Debian à partir de Nightly Builds
Arnaud F. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2010, 13h12   #3
Candidat au titre de Membre du Club
 
Kevin D'ORANGE
Inscription : août 2009
Messages : 33
Détails du profil
Informations personnelles :
Nom : Kevin D'ORANGE
Localisation : France, Doubs (Franche Comté)

Informations forums :
Inscription : août 2009
Messages : 33
Points : 13
Points : 13
Envoyer un message via MSN à Oragon Efreet Envoyer un message via Skype™ à Oragon Efreet
Ok, je viens de tester. Ça marche sans soucis. En voyant les notes de version de JQuery j'avais remarqué que $.find() était importante. Je vais m'y pencher plus sérieusement alors
Oragon Efreet est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h32.


 
 
 
 
Partenaires

Hébergement Web