daporoty
Messages postés54Date d'inscriptionmercredi 4 mai 2005StatutMembreDernière intervention10 septembre 2012
-
29 août 2007 à 14:24
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 2013
-
31 août 2007 à 12:19
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 29 août 2007 à 14:55
bonjour,
>pour intégrer les onclick dans le value
on ne peux pas. enfin.. avec IE. avec FF ce serait possible.
onchange dans le select qui appelle une fonction, dans laquelle
on exécute ce qu'il faut en fonction du n° de ligne
<select onchange="trt(this);"...
et dans : function trt(s) ou utilise
s.options[s.selectedIndex].text ou .value
ou même s.selectedIndex qui est le n° de ligne
( attention à la ligne sélectionnée par défaut si size=1 ou non codé )
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 30 août 2007 à 06:08
function trt(sel)
{ switch ( sel.selectedIndex ) test n° d'option
ou switch ( sel.options[sel.selectedIndex].value ) test value de l'option sélectionnée
ou ... ?
{ case 0:
traitement si option 1 choisie
break;
case 1:
traitement si option 2 choisie
break;
...
}
}
ou , et ce serait probablement mieux ( pas de switch, 1 seule instruction.... )
met ce qu'il faut dans le value pour t'y "brancher directement"
creuse un peu de ce coté là... eval par exemple ?
<hr /> Cordialement Bul [mon Site] [M'écrire]<hr />En général, c'est absurde de généraliser.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Il n'y a aucune impression lors de la selection dans le menu déroulant, alors qu'en remplacant le menu par des boutons l'un à coté de l'autre, ca marche.
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 31 août 2007 à 09:18
si tu testes le value ( pourquoi mettre un value 1,2,... d'ailleurs
selectedIndex est plus simple, c'est le n° de ligne )
c'est du caractère pas un nombre.
case "1": Printtext(); Printimg();
je disais eval.
ch'tit exemple ?
<script type="text/javascript">
function trt1() { alert("1"); }
function trt2() { alert("2"); }
function trt(s)
{ eval(s.options[s.selectedIndex].value+"()");
// ou , mais c'est exclusif IE je crois : window[s.options[s.selectedIndex].value()];
}
</script>
<select size=3
onchange="trt(this);">
<option value="trt1">un
<option value="trt2">deux
</select>
<hr />
Cordialement Bul [mon Site] [M'écrire]<hr /> En général, c'est absurde de généraliser.
daporoty
Messages postés54Date d'inscriptionmercredi 4 mai 2005StatutMembreDernière intervention10 septembre 2012 31 août 2007 à 12:08
Salut Bultez,
Magnifique, là c'est très clair, j'ai tout compris !
Je n'ai jamais pris de cours, j'apprend sur le tas et c'est pas très facile avec le language objet.
Il ne reste un dernier problème, c'est l'exécution de deux fonction (les function trt2 et 3) sous le nom function trt1, voici les script :
<script>
function trt1()
{
if(navigator.appName=='Microsoft Internet Explorer') {
parent.text.focus(); parent.photo.focus(); window.print();
} else {
parent.text.print(); parent.photo.print();
}
}
function trt2()
{
if(navigator.appName=='Microsoft Internet Explorer') {
parent.text.focus(); window.print();
} else {
parent.text.print();
}
}
function trt3()
{
if(navigator.appName=='Microsoft Internet Explorer') {
parent.photo.focus(); window.print();
} else {
parent.photo.print();
}
}