Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > AJAX
AJAX Forum sur la programmation AJAX. Avant de poster : Cours AJAX, FAQ AJAX, 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 06/05/2011, 10h46   #1
Invité régulier
 
Benoît ORY
Inscription : juin 2010
Messages : 41
Détails du profil
Informations personnelles :
Nom : Benoît ORY

Informations forums :
Inscription : juin 2010
Messages : 41
Points : 5
Points : 5
Par défaut Afficher resultat dans une seconde page web

Bonjour,

J'ai une page html avec un formulaire de recherche.
une premiere requete ajax va attaquer SAS et retourner
dans ma page un tableau de resultats

Lors d'un clique sur une cellule de la premiere colonne (un numero de patient)
ma deuxieme requete ajax est éxécuté pour me retourner d'autres informations sur mon patient

Tout ceci fonctionne, seulement je souhaiterai que ma deuxieme requete retourne mon tableau de résultat dans une seconde page web et non la premiere pour pouvoir jongler entre leux deux

Je precise que mon tableau de resultats est creer automatiquement grace a une fonction "sigma grid" .

Je ne sais pas si j'ai choisit le bon forum (javascript / ajax / jquery ?). Veuillez deplacer si nécessaire

Merci pour toute aide

Ci apres mon code javascript.

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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
 
 
 
 
$(document).ready( function() {
 
	var resu;
 
	var dsOption= {
	fields :[
		{name : 'strfolder'  },
		{name : 'strfile'  }
	],
	recordType : 'array',
	data : resu
	};
	var grid_demo_id = "myGrid1" ;
	var colsOption = [
	   {id: 'strfolder' , header: "PATIENT" , width :530  },
	   {id: 'strfile' , header: "DISCOM" , width :320  }
    ];
 
var gridOption={
	id : grid_demo_id,
	width: "900",  //"100%", // 700,
	height: "350",  //"100%", // 330,
	container : 'gridbox', 
	replaceContainer : true,
	dataset : dsOption ,
	columns : colsOption,
	toolbarContent : 'nav | goto | pagesize ',
	pageSize : 10 ,
	pageSizeList : [5,10,15,20,50,100,500,1000,5000]
};
var mygrid=new Sigma.Grid( gridOption );
Sigma.Util.onLoad( Sigma.Grid.render(mygrid) );
 
 
 
  // détection de la saisie dans le champ de recherche
  $('#q').keyup( function(){
  $field=$(this);
 
    $('#results').html(''); // on vide les resultats
    $('#ajax-loader').remove(); // on retire le loader
 
    // on commence à traiter à partir du 3ème caractère saisie
    if( $field.val().length > 1 )
    {
	//alert($("#panel").val()); 
      // on envoie la valeur recherché en GET au fichier de traitement
      $.ajax({
  	type : 'GET', // envoi des données en GET ou POST
	url : 'http://cbsw1018.part.grs.net:8080/SASStoredProcess/do?_PROGRAM=/SDS/search_instant/search_instant2' , // url du fichier de traitement
	data : 'SRCH='+$(this).val()+'&PANEL='+$("#panel").val() , // données à envoyer en  GET ou POST
	beforeSend : function() { // traitements JS à faire AVANT l'envoi
	 // ajout d'un loader pour signifier l'action
		$field.after('<img src="/search_instant/img/ajax-loader.gif" alt="image du loader" id="ajax-loader" /> ');
	},				
	success :  function(data){ // traitements JS à faire APRES le retour d'ajax-search.php
			$('#ajax-loader').remove(); // on enleve le loader
 
			var resu= eval( '(' + data + ')');  // on récupere les données issus de la requete
			var result=resu[0][2];  // on récupere le nombre de resultats (calculé dans les données retournées)
 
 
			mygrid.refresh(resu);
 
		$("#results").html('Number of results : '+ result+ ' </div>');
 
 
 
 
		}
	   });
    }		
  });
 
 
 
  		$("[__gt_ds_index__]").live('click', function() {
			var patid=$(this).children('td').eq(0).text();             
 
 
 
		$.ajax({
				type : 'GET', // envoi des données en GET ou POST
				url : 'http://cbsw1018.part.grs.net:8080/SASStoredProcess/do?_PROGRAM=/SDS/search_instant/search_instant' , // url du fichier de traitement
				data : 'SRCH='+patid+'&PANEL='+$("#panel").val() , // données à envoyer en  GET ou POST
				beforeSend : function() { // traitements JS à faire AVANT l'envoi
				// ajout d'un loader pour signifier l'action
				$field.after('<img src="/search_instant/img/ajax-loader.gif" alt="image du loader" id="ajax-loader" /> ');
				},				
				success :  function(data){ // traitements JS à faire APRES le retour d'ajax-search.php
 
				$('#ajax-loader').remove(); // on enleve le loader
				var resu= eval( '(' + data + ')');  // on récupere les données issus de la requete
 
				mygrid.refresh(resu);
						}
				});
		});
 
}
 
);
Skytrancer est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/05/2011, 11h16   #2
Membre habitué
 
Inscription : septembre 2009
Messages : 85
Détails du profil
Informations personnelles :
Âge : 22
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : septembre 2009
Messages : 85
Points : 101
Points : 101
Euh, j'm'y connais pas trop, mais il me semble que tu veux juste ouvrir une page dans une nouvelle fenetre (s'du javascript).

un truc du genre
Code javascript :
window.open('.../afficherDetails.php?param1="idClient"&Param2="unAutreParam..")
et tu récupères tes paramètres de l'url de la nouvelle fenetre pour afficher les bonnes informations.
gototog est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/05/2011, 15h47   #3
Invité régulier
 
Benoît ORY
Inscription : juin 2010
Messages : 41
Détails du profil
Informations personnelles :
Nom : Benoît ORY

Informations forums :
Inscription : juin 2010
Messages : 41
Points : 5
Points : 5
peut etre mais dans mon code ci dessus je ne vois pas du tout ou placer un windows.open, je debute, désolé

merci
Skytrancer est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/05/2011, 21h14   #4
Futur Membre du Club
 
Homme Valérian
Développeur Web
Inscription : mai 2011
Messages : 14
Détails du profil
Informations personnelles :
Nom : Homme Valérian

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : mai 2011
Messages : 14
Points : 18
Points : 18
En fait, si tu veux afficher le résultat d'une requête dans une nouvelle page, l'AJAX n'est pas approprié. Tu dois directement ouvrir une page avec les paramètres GET qui vont bien grâce à la fonction window.open().

Dans ton code, tu devras donc remplacer $.ajax par un window.open.
Fluid-Val 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 09h05.


 
 
 
 
Partenaires

Hébergement Web