OVH Cloud OVH Cloud

Evenement, Es-tu là ?

6 réponses
Avatar
Saad Saad
Bonjour,

Comment peut-on savoir si un élément possède un évenemement bien précis ?


ex: comment savoir si mon SELECT possède l'événement onchange()


merci

6 réponses

Avatar
YD

Comment peut-on savoir si un élément possède un évenemement bien précis ?


Simplement en testant la propriété idoine (onchange, onblur, etc.) de
l'élément ! Si elle retourne null (IE) ou undefined (FF/Opera), c'est qu'aucun
gestionnaire n'a été affecté à l'évènement. On peut donc tester ainsi :

if(truc.onchange) ou if(!truc.onchange) selon le cas...

--
Y.D.

Avatar
Saad Saad

Comment peut-on savoir si un élément possède un évenemement bien précis ?



Simplement en testant la propriété idoine (onchange, onblur, etc.) de
l'élément ! Si elle retourne null (IE) ou undefined (FF/Opera), c'est
qu'aucun
gestionnaire n'a été affecté à l'évènement. On peut donc tester ainsi :

if(truc.onchange) ou if(!truc.onchange) selon le cas...



Salut,

j'avais pourtant esseyer, mais j'avais mis les parenthèses comme lors de
l'appel de l'événement.

Ca fonctionne beaucoup mieux sans


merci


Avatar
ASM
Saad Saad wrote:
Bonjour,

Comment peut-on savoir si un élément possède un évenemement bien précis ?


ex: comment savoir si mon SELECT possède l'événement onchange()


<script type="text/javascript">
function chge(monForm) {
txt = document.forms[monForm].elements[0].onchange? 'oui' : 'non';
alert(txt);
}
</script>
<p><a href="javascript:chge('form1');">on change ?</a>
<p><a
href="javascript:alert(document.forms['form1'].elements[0].onchange);">on
change contenu</a>



--
Stephane Moriaux et son [moins] vieux Mac

Avatar
Mathieu
Bonjour

pouvez me decrire les quelques lignes que vous avez ecrite svp ??
Je ne comprends pas trop le javascript

En faite si c'est ce que je pense cela pourrait m"etre tres utile.

Je suis en train de faire des pages JSP, j'aimerai rendre inactif certains
de mes composants si par exemple un composant 'x' est choisi
=> via l'evenment onChange de mes composants je pourrais peut etre faire des
verifications.

A quoi correspont Document ?
elements[0] ?

Y aurait pas moyen de faire un truc :
(pour un ComboBox par exemple mais devrait etre utilise pour les composants)

<select name="NAME" onChange="AppelleFonction" >

et dans la fonction jouer avec Document.forms["NOMFORM"].elements[?]. 'peut
etre methode du combobox comme par exemple un getSelectedItem

????

Merci de votre aide

Mathieu

"ASM" a écrit dans le message de news:
42dd93e9$0$3117$
Saad Saad wrote:
Bonjour,

Comment peut-on savoir si un élément possède un évenemement bien précis
?




ex: comment savoir si mon SELECT possède l'événement onchange()


<script type="text/javascript">
function chge(monForm) {
txt = document.forms[monForm].elements[0].onchange? 'oui' : 'non';
alert(txt);
}
</script>
<p><a href="javascript:chge('form1');">on change ?</a>
<p><a
href="javascript:alert(document.forms['form1'].elements[0].onchange);">on
change contenu</a>



--
Stephane Moriaux et son [moins] vieux Mac



Avatar
ASM
Mathieu wrote:
Bonjour

pouvez me decrire les quelques lignes que vous avez ecrite svp ??
Je ne comprends pas trop le javascript


les objets javascript d'une page html :
(voir intro de ce chapitre qui traite des fenêtres et popups)
http://perso.wanadoo.fr/stephane.moriaux/web_htm/java/fenetr/

Je suis en train de faire des pages JSP, j'aimerai rendre inactif certains
de mes composants si par exemple un composant 'x' est choisi


un composant ? tu veux dire un input dans un form ?

onchange = surveillant de l'évenement "changer" de l'élélément
dans lequel est posé ce surveillant
au changement de l'élément çà déclanche une action
(une fonction) pour champs text/password ou select ou textarea
autres :
onclick = au clic de la souris
onmouseover = au survol par la souris
onmouseout
onmousemove
onkeydown
onkeypress
onkeyup
onload (seulement pour balises body, img)
onfocus = quand l'objet a le pointeur
onblur = qd on quitte l'objet
onsubmit (balise form seulement)

=> via l'evenment onChange de mes composants je pourrais peut etre faire des
verifications.


No de tel :
<input type=text
onchange="if(this.length != 10 || this.value.length != 14)
alert('erreur dans le No de telephone');">
au changement, si la valeur de ce champ de texte
n'a pas une longueur égale à 10 ou à 14 hop! message d'avertissement

A quoi correspont Document ?


non : document (sans majuscule)
ben ... c'est le document (la page html) et non pas window (la fenêtre)

elements[0] ?


s'emploie pour les éléments (balises en général) d'un form

document.forms[0].elements[0]
désigne le 1er élément (ou balise) contenu dans le 1er form du document
dans l'exemple le 1er élément du form nommé 'monForm' est un select

en javascrit, pour désigner un objet il est d'usage d'en donner le
chemin complet
(ce que l'on ne fera pas si on utilise le DOM)

Y aurait pas moyen de faire un truc :
(pour un ComboBox par exemple mais devrait etre utilise pour les composants)


je ne sais ce qu'est un ComboBox (en fr çà donne quoi ?)

<select name="NAME" onChange="AppelleFonction" >


ceci s'appelle un select ou une liste déroulante, à la rigueur un 'menu'

et dans la fonction jouer avec Document.forms["NOMFORM"].elements[?]. 'peut
etre methode du combobox comme par exemple un getSelectedItem


<select
onchange="var i = this.selectedIndex;
if(i==0) alert('faire un autre choix dans la liste);
else
alert(this.options[i].text+' = '+this.options[i].value);">
<option selected>choisir
<option value="page_1.htm">P 1
<option value="page_2.htm">P 2
<option value="page_3.htm">P 3
</select>

"ASM" a écrit dans le message de news:
42dd93e9$0$3117$

Saad Saad wrote:
ex: comment savoir si mon SELECT possède l'événement onchange()


<script type="text/javascript">
function chge(monForm) {
txt = document.forms[monForm].elements[0].onchange? 'oui' : 'non';
alert(txt);
}
</script>
<p><a href="javascript:chge('form1');">on change ?</a>
<p><a
href="javascript:alert(document.forms['form1'].elements[0].onchange);">on
change contenu</a>




--
Stephane Moriaux et son [moins] vieux Mac



Avatar
Mathieu
Merci pour les infos et le lien
ca va m'aider pour le futur, entre temps j'avais reussi a faire lancer un
évènement via ma liste(que j'appelle combobox, defaut du au .NET et Java).

Mathieu
"ASM" a écrit dans le message de news:
42de50cc$0$22314$
Mathieu wrote:
Bonjour

pouvez me decrire les quelques lignes que vous avez ecrite svp ??
Je ne comprends pas trop le javascript


les objets javascript d'une page html :
(voir intro de ce chapitre qui traite des fenêtres et popups)
http://perso.wanadoo.fr/stephane.moriaux/web_htm/java/fenetr/

Je suis en train de faire des pages JSP, j'aimerai rendre inactif
certains


de mes composants si par exemple un composant 'x' est choisi


un composant ? tu veux dire un input dans un form ?

onchange = surveillant de l'évenement "changer" de l'élélément
dans lequel est posé ce surveillant
au changement de l'élément çà déclanche une action
(une fonction) pour champs text/password ou select ou textarea
autres :
onclick = au clic de la souris
onmouseover = au survol par la souris
onmouseout
onmousemove
onkeydown
onkeypress
onkeyup
onload (seulement pour balises body, img)
onfocus = quand l'objet a le pointeur
onblur = qd on quitte l'objet
onsubmit (balise form seulement)

=> via l'evenment onChange de mes composants je pourrais peut etre faire
des


verifications.


No de tel :
<input type=text
onchange="if(this.length != 10 || this.value.length != 14)
alert('erreur dans le No de telephone');">
au changement, si la valeur de ce champ de texte
n'a pas une longueur égale à 10 ou à 14 hop! message d'avertissement

A quoi correspont Document ?


non : document (sans majuscule)
ben ... c'est le document (la page html) et non pas window (la fenêtre)

elements[0] ?


s'emploie pour les éléments (balises en général) d'un form

document.forms[0].elements[0]
désigne le 1er élément (ou balise) contenu dans le 1er form du document
dans l'exemple le 1er élément du form nommé 'monForm' est un select

en javascrit, pour désigner un objet il est d'usage d'en donner le
chemin complet
(ce que l'on ne fera pas si on utilise le DOM)

Y aurait pas moyen de faire un truc :
(pour un ComboBox par exemple mais devrait etre utilise pour les
composants)



je ne sais ce qu'est un ComboBox (en fr çà donne quoi ?)

<select name="NAME" onChange="AppelleFonction" >


ceci s'appelle un select ou une liste déroulante, à la rigueur un 'menu'

et dans la fonction jouer avec Document.forms["NOMFORM"].elements[?].
'peut


etre methode du combobox comme par exemple un getSelectedItem


<select
onchange="var i = this.selectedIndex;
if(i==0) alert('faire un autre choix dans la liste);
else
alert(this.options[i].text+' = '+this.options[i].value);">
<option selected>choisir
<option value="page_1.htm">P 1
<option value="page_2.htm">P 2
<option value="page_3.htm">P 3
</select>

"ASM" a écrit dans le message de
news:


42dd93e9$0$3117$

Saad Saad wrote:
ex: comment savoir si mon SELECT possède l'événement onchange()


<script type="text/javascript">
function chge(monForm) {
txt = document.forms[monForm].elements[0].onchange? 'oui' : 'non';
alert(txt);
}
</script>
<p><a href="javascript:chge('form1');">on change ?</a>
<p><a


href="javascript:alert(document.forms['form1'].elements[0].onchange);">on
change contenu</a>




--
Stephane Moriaux et son [moins] vieux Mac