Bonjour,

J'ai un problème que je n'arrive pas à résoudre. Je dois récupérer l'action dans un form, le réécrire puis soumettre le formulaire en ajax.

Actuellement j'ai plusieurs pistes :

Methode 1
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
	$(".btnmain").click(function(){
 
		$('form').attr("action", function(){
		this.action = $('form').attr('action');
		this.action = this.action.replace(/\/$/, "");
		this.action = this.action.replace("fobb/", "");
		this.action = this.action.replace(".php", "");
 
			});
		//return false;
	});
Le comportement fonctionne mais l'ajax n'est pas implémenté.

Methode 2
Mais ceci ne marche pas -> (ajax non lançé)

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
	$(".btnmain").click(function(){
 
		$('form').attr("action", function(){
		this.action = $('form').attr('action');
		this.action = this.action.replace(/\/$/, "");
		this.action = this.action.replace("fobb/", "");
		this.action = this.action.replace(".php", "");
 
		$.post(this.action ,$('form').serialize(), function(data){
			$('#layout').html(data);
 
		  });
 
			});
		return false;
	});
Methode 3
ou encore, sans succes (ajax lançé mais le php retourne de mauvais résultat) :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
	$(".btnmain").click(function(){
		var myaction = $('form').attr('action');
		myaction = myaction.replace(/\/$/, "");
		myaction = myaction.replace("fobb/", "");
		myaction = myaction.replace(".php", "");
		$.post(myaction,$('form').serialize(), function(data){
			$('#layout').html(data);
 
			});
 
		return false;
 
	});
});
Comment pourrais je fusionner la Méthode 1 et la méthode 3 ?