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 29/07/2011, 11h05   #1
Membre éprouvé
 
Avatar de gtraxx
 
Homme Aurélien Gérits
Développeur Web
Inscription : mai 2006
Messages : 1 045
Détails du profil
Informations personnelles :
Nom : Homme Aurélien Gérits
Âge : 30
Localisation : Belgique

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2006
Messages : 1 045
Points : 498
Points : 498
Par défaut extraire les données de la requête pour conditions

Bonjour à tous, j'ai un petit problème, je recherche un moyen de faire une conditions sur une requête ajax suivant un paramètres post.
Je m'explique :
J'ai un menu déroulant qui contient 3 options, suivant l'option choisie je retourne des données très différente en JSON, jusque la pas de problème.
Mais je cherche un moyen de connaitre la valeur du post pour faire une condition afin choisir le type de résultat.
Code :
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
$("#forms-plugins-hmenu-searchlink-catalog").submit(function(){
			$(this).ajaxSubmit({
	    		url:'/admin/plugins.php?name=hmenu&hlang='+idlang,
	    		type:"post",
	    		dataType:"json",
	    		resetForm: true,
	    		beforeSubmit:function(){
	    			$('#result-search-hmenu-link').html('<img class="loader-block" src="/framework/img/square-circle.gif" />');
	    		},
	    		success:function(j) {
					$('#result-search-hmenu-link').empty();
					var tablecat = '<table id="table_search_product" class="table-widget-product">'
						+'<thead><tr style="padding:3px;" class="ui-widget ui-widget-header">'
						+'<th><span class="lfloat magix-icon magix-icon-h1"></span>Titre</th>'
						+'<th><span class="lfloat ui-icon ui-icon-flag"></span></th>'
						+'<th><span class="lfloat ui-icon ui-icon-link"></span></th>'
						+'</tr></thead>'
						+'<tbody>';
					tablecat += '</tbody></table>';
					$(tablecat).appendTo('#result-search-hmenu-link');
					if(j === undefined){
						console.log(j);
					}
					if(j !== null){
						$.each(j, function(i,item) {
							if(item.iso != null){
								flaglang =item.iso;
							}
							return $('<tr>'
							+'<td class="medium-cell">'+item.title+'</td>'
							+'<td class="small-icon">'+flaglang+'</td>'
							+'<td>'+item.uri+'</td>'
							+'</tr>').appendTo('#table_search_product tbody');
						});
					}else{
						return $('<tr>'
						+'<td class="medium-cell"><span class="lfloat ui-icon ui-icon-minus"></span></td>'
						+'<td class="small-icon"><span class="lfloat ui-icon ui-icon-minus"></span></td>'
						+'<td class="small-icon"><span class="lfloat ui-icon ui-icon-minus"></span></td>'
						+'</tr>').appendTo('#table_search_product tbody');
					}
	    		}
	    	});
			return false; 
		});
Donc ici je retourne un tableau bien distinct, mais je souhaite en avoir 3 et que suivant le paramètre du select passée en post j'affiche un type de tableau.
Genre si $post categorie tu retourne le tableau 3 colonnes avec tel données de résultat, sinon tu retourne un tableau 5 colonnes avec d'autres données.
Exemple avec le deuxième tableau de résultat n'ayant rien avoir avec le premier :
Code :
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
 
$('#result-search-hmenu-link').empty();
					var tablecat = '<table id="table_search_product" class="table-widget-product">'
						+'<thead><tr style="padding:3px;" class="ui-widget ui-widget-header">'
						+'<th><span class="lfloat magix-icon magix-icon-h1"></span>Titre</th>'
						+'<th><span class="lfloat ui-icon ui-icon-flag"></span></th>'
						+'<th><span class="lfloat ui-icon ui-icon-t"></span></th>'
						+'<th><span class="lfloat ui-icon ui-icon-t"></span></th>'
						+'<th><span class="lfloat ui-icon ui-icon-link"></span></th>'
						+'</tr></thead>'
						+'<tbody>';
					tablecat += '</tbody></table>';
					$(tablecat).appendTo('#result-search-hmenu-link');
					if(j === undefined){
						console.log(j);
					}
					if(j !== null){
						$.each(j, function(i,item) {
							if(item.iso != null){
								flaglang =item.iso;
							}
							return $('<tr>'
							+'<td class="medium-cell">'+item.title+'</td>'
							+'<td class="small-icon">'+item.category+'</td>'
							+'<td class="small-icon">'+flaglang+'</td>'
							+'<td>'+item.uri+'</td>'
							+'</tr>').appendTo('#table_search_product tbody');
						});
					}else{
						return $('<tr>'
						+'<td class="medium-cell"><span class="lfloat ui-icon ui-icon-minus"></span></td>'
						+'<td class="small-icon"><span class="lfloat ui-icon ui-icon-minus"></span></td>'
						+'<td class="small-icon"><span class="lfloat ui-icon ui-icon-minus"></span></td>'
						+'</tr>').appendTo('#table_search_product tbody');
					}
Donc suivant l'élément sélectionné dans le menu déroulant et après avoir cliquer sur le bouton me retourner un résultat complètement différent voir ma source html
Code :
1
2
3
4
5
6
7
8
 
<select id="catalog" name="catalog">
										<option value="category">Catégorie</option>
										<option value="subcategory">Sous catégorie</option>
										<option value="product">Produits</option>
									</select>
									<input type="text" name="post_search" id="post_search" class="inputtext ui-corner-all" value="" size="30" />
									<input type="submit" value="envoyer" />
Edit j'ai trouver une solution en ajoutant :
Code :
var selected = $('#catalog option:selected').val();
juste après le submit()
__________________
Au petit déjeuner, je prend du PHP et au souper du jQuery.
AFUP 2009 : Bien optimiser son code pour le référencement
Mon projet open source de librairie PHP 5: magix cjquery
gtraxx 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 14h10.


 
 
 
 
Partenaires

Hébergement Web