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 31/10/2011, 12h20   #1
Membre régulier
 
Homme Lionel ANDRE
Inscription : avril 2005
Messages : 294
Détails du profil
Informations personnelles :
Nom : Homme Lionel ANDRE
Âge : 27
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : avril 2005
Messages : 294
Points : 77
Points : 77
Par défaut Formulaire et Ajax submit

Bonjour à tous !

J'utilise JQuery et le plugin jquery.form pour la création de mes formulaires.

J'ai plusieurs formulaires qui peuvent être utilisés indépendamment.

Cependant dans une page j'affiche plusieurs de ces formulaires dans une seule page : Lorsque je sélectionne un noeud dans une arborescence, j'affiche les formulaires associés à ce noeud avec ajax (pour ne pas recharger toute la page).

Problème : je récupère bien le formulaire, mais pas les scripts. Du coup le formulaire HTML n'est pas transformé en formulaire "JQuery" avec jquery.form.
Et les fonctionnalités javascripts que j'avais développé ne sont pas récupérées non plus...

Alors voici ma question : Comment faire pour utiliser $.get() pour récupérer le formulaire et son contexte (scripts...)
andlio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2011, 15h07   #2
Invité de passage
 
Homme
Inscription : octobre 2011
Messages : 3
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : octobre 2011
Messages : 3
Points : 2
Points : 2
Peut-être une piste :
Quand on modifie le DOM - notamment avec Ajax- il faut : soit recharger les scripts Jquery au retour d'ajax, soit les utiliser dès le début en mode "live" !
SimonLib est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/11/2011, 08h15   #3
Membre régulier
 
Homme Lionel ANDRE
Inscription : avril 2005
Messages : 294
Détails du profil
Informations personnelles :
Nom : Homme Lionel ANDRE
Âge : 27
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : avril 2005
Messages : 294
Points : 77
Points : 77
Merci pour cette piste !

J'ai regardé $.live() mais elle ne gère pas les évènements "ready" et "load".
Je suis tombé sur un plugin JQuery : jquery.liveReady. Je vais vois ce que cela donne :-)
andlio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/11/2011, 08h45   #4
Membre régulier
 
Homme Lionel ANDRE
Inscription : avril 2005
Messages : 294
Détails du profil
Informations personnelles :
Nom : Homme Lionel ANDRE
Âge : 27
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : avril 2005
Messages : 294
Points : 77
Points : 77
Quelqu'un a-t-il déjà utilisé le plugin jquery.liveready ?

Mon code n'a pas l'air de fonctionner :-(
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$(function(){
	$.liveReady("#form", function(){
		console.log("live");	
		$("#form_requirement_compliances").ajaxForm({
			type:"POST",
			success:function(data){
				//var divForm = $(data).find("#divForm");
				var divForm = $("#divForm");
				var formRequirementCompliances = $(data).find("#form_requirement_compliances");
 
				//$("#divForm").empty().append(formRequirementCompliances);
				$(divForm).empty().append(formRequirementCompliances);
				showSuccess("Success");
			}
		});
	});
});
Voici le déroulement :
  1. Je charge une 1ere fois la page. Le log "live" s'affiche
  2. Je soumets mon formulaire. Il est soumis en ajax.
  3. Le formulaire est rafraichi comme prévu dans la fonction "success". Mais le log "live" ne s'affiche pas.
  4. Je soumets mon formulaire une seconde fois. Il n'est pas soumis en ajax -> la page se recharge

Conclusion : la fonction liveready n'est pas appelé au chargement du formulaire...
Mais pourquoi ??

Edit : en remplaçant $("#divForm") par $(divForm) dans le code javascript, ça fonctionne :-)
Edit 2 : boulette de ma part. En fait le code ne fonctionne pas. J'avais écris "var divForm = $(data).find("#divForm");" donc forcément c'était la div de la page retournée par le proccessSubmit qui était mise à jour mais pas celle de la page affichée... c'est pour ça que le formulaire n'était pas rafraichit et que tout semblait fonctionnais...
andlio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/11/2011, 09h53   #5
Rédacteur/Modérateur
 
Avatar de SpaceFrog
 
Homme
Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Inscription : mars 2002
Messages : 30 047
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Royaume-Uni

Informations professionnelles :
Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur
Secteur : Industrie

Informations forums :
Inscription : mars 2002
Messages : 30 047
Points : 45 152
Points : 45 152
comment est soumis ton form ? avec le bouton submit
si la page se rafraichit entièrement et pas uniquement par ajax il est normal que tu réinitialise la page
__________________
Ma page 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


réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr
SpaceFrog est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/11/2011, 08h08   #6
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 807
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 807
Points : 35 789
Points : 35 789
Citation:
Envoyé par andlio
J'ai regardé $.live() mais elle ne gère pas les évènements "ready" et "load".
Quel est le rapport entre ces événements et la soumission d'un formulaire ???
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h08.


 
 
 
 
Partenaires

Hébergement Web