Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript
JavaScript Forum programmation JavaScript. Lire : Cours JavaScript, FAQ JavaScript, Toutes les FAQ JavaScript et Sources 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 18/03/2011, 10h37   #1
Invité de passage
 
Homme David
Webmaster
Inscription : mars 2011
Messages : 4
Détails du profil
Informations personnelles :
Nom : Homme David
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Webmaster
Secteur : Service public

Informations forums :
Inscription : mars 2011
Messages : 4
Points : 0
Points : 0
Par défaut actualisation d'un select

Bonjour à tous ,
N'ayant pas fais de javascript depuis un moment je suis un peu perdu pour mon formulaire.
J'ai deux select un qui correspond au direction et un qui correspond au service. Celui correspondant au service doit s'actualiser en fonction de la direction choisi ... et c'est la que je suis perdu ... je mets le code si quelqu'un a une idée

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
 
/***** Appel test javascript *****/
		$content .= '<script type="text/javascript">
					function controle_dir() {
						document.direction.submit();
						document.location.reload();
					}
					</script>';
 
		/*** début du formulaire direction ***/
		$content .='<form name="direction" action="" method="POST">';
		$content .='<div id="label">Direction :</div>';
		$content .='<select name="direction" id="direction" title="Recherche par Direction" onChange="controle_dir(this[this.selectedIndex].value)">';
		$content .= '<option id="cacher"></option>';
		for ($d=0;$d<$count3;$d++){
				if ($rows3[$d]['direction'] != null){
					$content .='<option id="opt">'.$rows3[$d]['direction'].'</option>';
				}
		}
 
		$content .='</select>';
		$content .='</form>';
		/*** fin du formulaire direction ***/
 
		/*** début du formulaire ***/
		echo $_POST['direction'];
		$content .='<form for="formulaire" action="" method="POST" onChange="">';
		$content .='<div id="label">Service :</div>';
		$content .='<select name="service" id="service" title="Recherche par Service">';		
		$content .='<option></option>';
		for ($e=0; $e<$count2; $e++){ 
				if ($rows2[$e]['service'] != null && $_POST['direction'] == $rows2[$e]['direction']){
					$content .= '<option>'.$rows2[$e]['service'].'</option>';
				}
		}
 
		$content .='</select>';
 
		$content .='<div id="label">Nom :</div> <input style="width:150px;" type="text" name="nom" title="Recherche par nom de famille"><br />';
		$content .='<div id="label">Prénom :</div> <input style="width:150px;" type="text" name="prenom" title="Recherche par prénom"><br />';
		$content .='<br /><input type="submit" class="submit" name="submit" value="Rechercher" title="Lancer la recherche"><input type="reset" class="reset" name="reset" value="Restaurer" title="Restaurer le formulaire">';
</form>
creadb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/03/2011, 10h38   #2
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 007
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 007
Points : 45 091
Points : 45 091
On préfèrerait voir le html js généré ...
__________________
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 déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/03/2011, 10h48   #3
Invité de passage
 
Homme David
Webmaster
Inscription : mars 2011
Messages : 4
Détails du profil
Informations personnelles :
Nom : Homme David
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Webmaster
Secteur : Service public

Informations forums :
Inscription : mars 2011
Messages : 4
Points : 0
Points : 0
Qu'entends tu par html généré ??

Bossant sous typo3 je ne peux pas donner plus d'info à part poser le code entier de l'extension ...
creadb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/03/2011, 10h54   #4
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 007
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 007
Points : 45 091
Points : 45 091
Quand tu visualise ta page dans un navigateur ..
tu fais afficher ... source ...
__________________
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 déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/03/2011, 11h01   #5
Invité de passage
 
Homme David
Webmaster
Inscription : mars 2011
Messages : 4
Détails du profil
Informations personnelles :
Nom : Homme David
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Webmaster
Secteur : Service public

Informations forums :
Inscription : mars 2011
Messages : 4
Points : 0
Points : 0
Oki dsl mais j'ai le nez dans le code depuis 3 jours

Code :
1
2
3
4
5
6
7
 
<html><head><link rel="stylesheet" type="text/css" href="fileadmin/templates/widget/style.css" media="all" /><script type="text/javascript" src="fileadmin/templates/widget/js/jquery.js" media="all"></script><script type="text/javascript" src="fileadmin/templates/widget/js/select.js" media="all"></script><script type="text/javascript" src="typo3conf/ext/rgmoodalbox/res/js/mootools.js"></script><script type="text/javascript" src="typo3conf/ext/rgmoodalbox/res/js/moodalbox.js"></script></head><body><script type="text/javascript">
					function controle_dir() {
						document.direction.submit();
						document.location.reload();
					}
					</script><form name="direction" for="direction" action="" method="POST"><div id="label">Direction :</div><select name="direction" id="direction" title="Recherche par Direction" onChange="controle_dir(this[this.selectedIndex].value)"><option id="cacher"></option><option id="opt">Affaires Financières - Prévention</option><option id="opt">Affaires Statutaires</option><option id="opt">Communication</option><option id="opt">Concours</option><option id="opt">Direction</option><option id="opt">Emploi</option><option id="opt">Présidence</option><option id="opt">Ressources humaines et logistique</option></select></form><form for="formulaire" action="" method="POST" onChange=""><div id="label">Service :</div><select name="service" id="service" title="Recherche par Service"><option></option></select><div id="label">Nom :</div> <input style="width:150px;" type="text" name="nom" title="Recherche par nom de famille"><br /><div id="label">Prénom :</div> <input style="width:150px;" type="text" name="prenom" title="Recherche par prénom"><br /><br /><input type="submit" class="submit" name="submit" value="Rechercher" title="Lancer la recherche"><input type="reset" class="reset" name="reset" value="Restaurer" title="Restaurer le formulaire"><br /><br /><div align="center" style="color:red;">Vous devez renseigner un champs minimum.</div></form></body></html>
Voici le code généré par le widget ou ce trouve le code.
creadb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/03/2011, 14h52   #6
Invité régulier
 
Homme
ASP Javascript Ajax Jquey
Inscription : janvier 2011
Messages : 5
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : ASP Javascript Ajax Jquey
Secteur : Finance

Informations forums :
Inscription : janvier 2011
Messages : 5
Points : 5
Points : 5
Ta balise form a le meme nom que ton select N° 1 c'est une idée

Pourquoi ne mets-tu pas à jour ton select N° 2 avec du Jquery, sans transmettre ton formulaire ?
Code javascript :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
$('#direction').change(function(){
	var value = '';
        $('#direction' :selected').each(function(i, selected){
	      value = $(selected).val();
	});
	$.ajax({
	async : false,
	type: 'POST',
	url: 'PageGetInfo.php',
	data: 'action=miseajourselect&value='+value,
	error: function(){},
	beforeSend: function(){},
        success: function(msg){
             $('#service').replaceWith(msg);
             }
	});
		});
 
});
PageGetinfo
Code :
1
2
3
4
5
6
7
8
9
10
11
 
if action = miseajourselect then
<select name="service" id="service">
<option .....
....
....
....
</option>
</select>
 
end if
Ps: désolé pour mon manque de temsps pour trouver le bon code pour du Php
tayoze est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/03/2011, 15h22   #7
Invité de passage
 
Homme David
Webmaster
Inscription : mars 2011
Messages : 4
Détails du profil
Informations personnelles :
Nom : Homme David
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Webmaster
Secteur : Service public

Informations forums :
Inscription : mars 2011
Messages : 4
Points : 0
Points : 0
Merci pour ta réponse mais j'avais déjà fais un code en jquery mais IE < 9 pose un souci (et j'ai quasi tout les utilisateurs en ie8) ...
C'est pour cela que j'essaie de réduire l'utilisation de script et le réduire au simple fait de juste rafraichir le deuxième select en fonction de la valeur du premier ...

... ...
creadb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/03/2011, 14h10   #8
Membre expérimenté
 
Avatar de nadox
 
Homme
Développeur
Inscription : février 2010
Messages : 360
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Calvados (Basse Normandie)

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

Informations forums :
Inscription : février 2010
Messages : 360
Points : 545
Points : 545
Bonne idée tayoze. Sortons le tank pour tuer une mouche !
Non c'est vrai : un tank c'est très utile si tu ne sait pas viser !
Je précise que je suis tout de même d'accord sur l'idée de ne pas faire un submit... mais ce n'est peut-être pas la chose la plus simple à faire pour débuter le javascript, non ?

Le problème est effectivement que tu as sur ta page deux éléments avec le même name... dont l'un est un formulaire et l'autre un select.
Que vas donc faire le document.direction.submit() ?
envoyer le formulaire ou le select ??

Je ne comprends d'ailleurs pas trop la ligne suivante qui demande de faire un reload après avoir fait un submit....

As-tu une idée de ce qu'est un requête entre le client et le serveur?

Pour ton nez, je te conseille de le garder au moins un peu au dessus de ton code, imagine si il se retrouve pris dans une boucle infinie !
nadox 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 22h22.


 
 
 
 
Partenaires

Hébergement Web