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 02/02/2012, 15h03   #1
Membre éclairé
 
Avatar de EIN-LESER
 
Homme Sebastian
Développeur Web
Inscription : mai 2008
Messages : 380
Détails du profil
Informations personnelles :
Nom : Homme Sebastian
Âge : 35
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : mai 2008
Messages : 380
Points : 318
Points : 318
Envoyer un message via MSN à EIN-LESER
Par défaut hide options d'un select sous ie

Petite question bête

J'ai une petite fonction js qui me cache certains options dans un select en fonction d'un autre champ option.

Sous Firefox pas de soucis (comme d'ab )
sous IE il veut rien savoir.

J'ai cru comprendre, en recherchant sur google que ie ne sait pas cacher les éléments d'un select.

Pourriez vous me dire si il existe quelque chose qui s'en approche ou peut être utilisé a la place please

Merci d'avance
__________________
Spécialiste des questions bêtes

L'urgent est fait, l’impossible est en cour, pour les miracles prévoir un délai

Si une reponse vous plait ou vous a aidé n'hesitez pas a voter pour
EIN-LESER est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/02/2012, 15h11   #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 076
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 076
Points : 45 211
Points : 45 211
Faut pas y aller en douceur ...
pour IE c'est à la manière forte !
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
<select id="foo">
	<option>1</option>
	<option>2</option>
	<option>3</option>
	<option>4</option>
	<option>5</option>
	<option>6</option>
	<option>7</option>
	<option>8</option>
</select>
<script type='text/javascript'>
document.getElementById('foo').removeChild(document.getElementById('foo').getElementsByTagName('option')[2])
</script>
__________________
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/02/2012, 15h26   #3
Membre éclairé
 
Avatar de EIN-LESER
 
Homme Sebastian
Développeur Web
Inscription : mai 2008
Messages : 380
Détails du profil
Informations personnelles :
Nom : Homme Sebastian
Âge : 35
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : mai 2008
Messages : 380
Points : 318
Points : 318
Envoyer un message via MSN à EIN-LESER
Le code javascript se trouve dans un fichier .js a part

Voici la partie qui m'embete (vilaine va lol)

J'ai essaye le remouvechild mail il me dit que l'objet ne le gere pas :-~

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
 
//Concerne le filtrage et l'affichage des 3 selects pour la région
	function filtreregion2(){
		var region1=$('#region1 option:selected').attr('id');
 
		$('#region2 option').each(function(index) {
		    if($(this).attr('name')==region1){ $(this).show();}else{$(this).hide();}
		});
		$('#region2 option[name='+region1+']').attr('selected','selected');
 
	}
	function filtreregion3(){
		var region2=$('#region2 option:selected').attr('id');
		$('#region3 option').each(function(index) {
		    if($(this).attr('name')==region2){ $(this).show();}else{$(this).hide();}
		});
		$('#region3 option[name='+region2+']').attr('option:selected','option:selected');
		nb2=$('#region3 option[name='+region2+']').length;
		if (nb2==0) {$('#region3').hide();}else{$('#region3').show();}
 
 
	}		
	filtreregion2();
	filtreregion3();
 
	$('#region1').change(function(evt){
		filtreregion2();
		filtreregion3();
__________________
Spécialiste des questions bêtes

L'urgent est fait, l’impossible est en cour, pour les miracles prévoir un délai

Si une reponse vous plait ou vous a aidé n'hesitez pas a voter pour
EIN-LESER est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/02/2012, 15h29   #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 076
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 076
Points : 45 211
Points : 45 211
je ne vois pas ta tentative de removeChild ???
et en jquery c'est remove()

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<script type='text/javascript'>
$( function(){
$('#foo option:eq(2)').remove()
})
</script>
</head>
<body>
<select id="foo">
	<option>1</option>
	<option>2</option>
	<option>3</option>
	<option>4</option>
	<option>5</option>
	<option>6</option>
	<option>7</option>
	<option>8</option>
</select>
__________________
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/02/2012, 15h38   #5
Membre éclairé
 
Avatar de EIN-LESER
 
Homme Sebastian
Développeur Web
Inscription : mai 2008
Messages : 380
Détails du profil
Informations personnelles :
Nom : Homme Sebastian
Âge : 35
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : mai 2008
Messages : 380
Points : 318
Points : 318
Envoyer un message via MSN à EIN-LESER
Avec remove() cela marche bien pour la partie cacher .

Le probleme c'est que si l'user selectionne une autre option a qui il devrait correspondre a cette nouvelle option, comme le remove a tout suppré sa me mets une liste vide systematiquement.

Comment pourrai-je les recuperer?

Sorry d'avance mais je triche pas tu vous C'est anoncé dans ma& signature lol je suis le specialiste des questions betes ^^
__________________
Spécialiste des questions bêtes

L'urgent est fait, l’impossible est en cour, pour les miracles prévoir un délai

Si une reponse vous plait ou vous a aidé n'hesitez pas a voter pour
EIN-LESER est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/02/2012, 15h56   #6
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 076
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 076
Points : 45 211
Points : 45 211
Donc du coup faut pas faire un remove()
il faut le stocker temporairement ailleurs

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
<script type='text/javascript'>
$( function(){
$('body').append( $('<select/>').attr('id','tempsel').css('display','none'))
$("#rem").click(function(){
  ind=$("#optindex").val()
  $('#tempsel').append( $('#foo').find('option[value="'+ind+'"]') )
})
 
$("#add").click(function(){
  ind=$("#optindex").val()
  $('#foo').append( $('#tempsel').find('option[value="'+ind+'"]') )
})
 
})
</script>
</head>
<body>
 
<select id="foo">
	<option value="1">1</option>
	<option value="2">2</option>
	<option value="3">3</option>
	<option value="4">4</option>
	<option value="5">5</option>
	<option value="6">6</option>
	<option value="7">7</option>
	<option value="8">8</option>
</select>
 
<input type="button" value="remove" id="rem" />
<input type="button" value="add"  id="add" /> 
<input type="text" value="" id="optindex" />
</html>
ici la selection s'opère sur le value et je ne gère pas la position dans le select
__________________
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 03/02/2012, 12h03   #7
Membre éclairé
 
Avatar de EIN-LESER
 
Homme Sebastian
Développeur Web
Inscription : mai 2008
Messages : 380
Détails du profil
Informations personnelles :
Nom : Homme Sebastian
Âge : 35
Localisation : France, Marne (Champagne Ardenne)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : mai 2008
Messages : 380
Points : 318
Points : 318
Envoyer un message via MSN à EIN-LESER
J'ai trouvé finalement.

Ce que j'ai fait:
Au chargement de la page je récupère les options a mettre (tous)
Je les mets dans un tableau
A chaque changement je recharge tout les options et remove ceux qui m’intéressent pas.

Pas forcement élégant lol mais sa marche.

Merci pour tout
__________________
Spécialiste des questions bêtes

L'urgent est fait, l’impossible est en cour, pour les miracles prévoir un délai

Si une reponse vous plait ou vous a aidé n'hesitez pas a voter pour
EIN-LESER 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 14h28.


 
 
 
 
Partenaires

Hébergement Web