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 26/09/2011, 16h23   #1
Candidat au titre de Membre du Club
 
yoann pasian
Inscription : juillet 2009
Messages : 43
Détails du profil
Informations personnelles :
Nom : yoann pasian
Âge : 35
Localisation : France, Hérault (Languedoc Roussillon)

Informations forums :
Inscription : juillet 2009
Messages : 43
Points : 11
Points : 11
Par défaut IE et display

Bonjours tout le monde.

Me voilà de retour pour pauser une nouvelle question où je ne trouve pas la réponse.
Je suis entrain de développer un formulaire où on peut sélectionner via un menu déroulant une langue. Si on choisie Other..., normalement un nouveau champs doit apparaître pour pouvoir saisir une autre langue non disponible dans la liste. Mais voilà le problème, bien que mon code marche bien sous firefox, il refuse de marcher sur IE8, IE9 et Chrome et donc je pense aussi sous safarie.

voici mon code
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
<table style="font-size:14px;">
		<tr>
			<td>
					<select name="sourcelanguage" style="width:200px;">
 
							<option value="<?php echo $OrderForm_language_japanese;?>" class="HideOSL"> <?php echo $OrderForm_language_japanese;?> </option>
							<option value="<?php echo $OrderForm_language_other;?>"  id="ShowOSL"> <?php echo $OrderForm_language_other; ?> </option>
					</select>
				</td>
				<td id="OSL" style="display:none;position:relative;right:300px;" > <input id="textSL" type="text"  size="30" value="<?php echo $OrderForm_language_otherChoiceSource;?>" style="background-color:#FFFAC6;" ></td>
 
		</tr>
</table>
Ainsi le second <td> n'est pas visible et j'utilise Jquery pour la faire apparaitre lorsque l'on clique sur l'option avec id="ShowOSL" dans le menu déroulant. Je n'ai pas mis tout le menu pour ne pas alourdir la lecture.

Du côté de Jquery voici mon code :

Code :
1
2
3
4
5
6
7
8
9
 
 
$(document).ready(function(){
 
       $('#ShowOSL').click(function() {
		$('#OSL').css('display','block');
	});
 
});
Pour finir, j'ai quasiment tout essayer, dont visibility, les différents display avec block, inline, table, table-cell etc...
J'ai même essayer de déplacer la position en jquery du <td>. J'ai aussi transformer le <td> en <div> pour les problèmes connues de block sur <td>. Mais rien y fait. Je suis perdu et je ne comprend pas ce qui se passe.


Si quelqu'un a une petite réponse...
yoann34 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/09/2011, 16h32   #2
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 807
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 807
Points : 35 789
Points : 35 789
C'est normal, il n'y a pas d'événement click pour une balise <option>
http://msdn.microsoft.com/en-us/libr...=VS.85%29.aspx
Il faut gérer le change du select et vérifier la valeur de l'option sélectionnée.
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/09/2011, 17h06   #3
Candidat au titre de Membre du Club
 
yoann pasian
Inscription : juillet 2009
Messages : 43
Détails du profil
Informations personnelles :
Nom : yoann pasian
Âge : 35
Localisation : France, Hérault (Languedoc Roussillon)

Informations forums :
Inscription : juillet 2009
Messages : 43
Points : 11
Points : 11
Hey, merci pour cette réponse rapide.

Je me rends compte que je suis encore un gros débutant . J'ai a moitier compris, mais je vais regarder de près le lien.

Cela veut dire que firefox est très permissif par rapport aux autres navigateur.

Si toute fois tu avais un petit exemple, je le prend avec joie. Sinon merci encore.
yoann34 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/09/2011, 17h50   #4
Candidat au titre de Membre du Club
 
yoann pasian
Inscription : juillet 2009
Messages : 43
Détails du profil
Informations personnelles :
Nom : yoann pasian
Âge : 35
Localisation : France, Hérault (Languedoc Roussillon)

Informations forums :
Inscription : juillet 2009
Messages : 43
Points : 11
Points : 11
Ok merci, j'ai trouvé et ça marche super.

Je mets mon code modifié si cela peut aider quelqu'un d'autre dans le futur.

Code html :
1
2
3
4
5
6
7
8
9
10
11
12
13
<table style="font-size:14px;">
		<tr>
			<td>
					<select name="sourcelanguage" style="width:200px;" id="Sl"  >
 
							<option value="<?php echo $OrderForm_language_japanese;?>" class="HideOSL"> <?php echo $OrderForm_language_japanese;?> </option>
							<option value="Other"  id="ShowOSL"> <?php echo $OrderForm_language_other; ?> </option>
					</select>
				</td>
				<td id="OSL" style="display:none;position:relative;right:300px;" > <input id="textSL" type="text"  size="30" value="<?php echo $OrderForm_language_otherChoiceSource;?>" style="background-color:#FFFAC6;" ></td>
 
		</tr>
</table>


Et pour le JS:

Code :
1
2
3
4
5
	$('#Sl').change( function() {
		var selection = $(this).val();
		if (selection == "Other") { $('#OSL').css('display','block'); }
		else { $('#OSL').css('display','none'); }
	});
Merci encore.

Problème résolu.
yoann34 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 22h37.


 
 
 
 
Partenaires

Hébergement Web