FAQ JavaScript
FAQ JavaScriptConsultez toutes les FAQ
Nombre d'auteurs : 43, nombre de questions : 176, dernière mise à jour : 29 août 2021
- Comment sélectionner la valeur d'un champ texte ?
- Comment activer/désactiver un objet formulaire ?
- Comment donner le focus à un objet ?
- Comment modifier le texte d'un bouton input type file ?
- Comment utiliser une variable JavaScript dans un champ texte ?
- Comment modifier un événement d'un objet ?
- Comment créer un graphique avec des courbes ?
- Comment afficher la liste des balises d'un document, dans l'ordre?
- Comment rendre son document non sélectionnable ?
- Comment remplacer l'attribut target pour les balises <a> en XHTML ?
Ce code peut être utilisé par exemple lors de l'échec de la validation d'un champ de formulaire.
document
.getElementById
(
'monchamp'
).select
(
);
En utilisant :
disabled =
true
ou :
disabled =
false
Exemple :
checkbox qui active/désactive un champs texte.
Entre les balises <head></head> :
function actdesact
(
){
if (
document
.
formulaire.
check_box.
checked)
document
.
formulaire.
zone_texte.
disabled=
true;
else
document
.
formulaire.
zone_texte.
disabled=
false;
}
et la checkbox :
<input type
=
"checkbox"
name
=
"check_box"
onclick
=
"actdesact()"
/>
En JavaScript, tous les objets ont une méthode permettant de leur donner le focus :
document
.getElementById
(
'id_objet'
).focus
(
);
Pour changer le texte d'un bouton de type file, on est obligé de "ruser" car il
n'y a pas d'autre moyen.
Voici le script :
function getfile
(
){
document
.getElementById
(
'hiddenfile'
).click
(
);
document
.getElementById
(
'selectedfile'
).
value=
document
.getElementById
(
'hiddenfile'
).
value
}
Et le corps de votre page :
<body>
<input type
=
"file"
id
=
"hiddenfile"
style
=
"display:none"
/>
<input type
=
"text"
id
=
"selectedfile"
/>
<input type
=
"button"
value
=
"Select a file"
onclick
=
"getfile()"
/>
</body>
En fait, ce que l'on aperçoit sur la page ressemble à un champ de type file, mais en réalité, il s'agit d'un bouton et d'un champ de type text. Ainsi, grâce à la fonction getfile(), on simule le clic sur le champ file que l'on a caché…
var lavariable =
"MaValeur"
;
document
.write
(
'<input type="text" name="champ" value="'
+
lavariable +
'">'
);
Dans cet exemple, le champ qui apparaitra aura comme valeur par défaut la valeur de la variable lavariable, c'est-à-dire : MaValeur.
Ce code permet de modifier ou d'ajouter un événement à un objet.
Par exemple un bouton ou un lien.
Pour cela, il suffit de donner un id à l'objet concerné et d'exécuter ce code,
ainsi, l'événement peut être assigné dynamiquement.
document
.getElementById
(
'id_objet'
).
onclick
=
function(
){
alert
(
"blabla"
)};
Avec ce code, on peut également modifier la valeur des propriétés propres
à l'objet en question. On peut par exemple modifier la propriété width,
height, …
<html>
<head>
<script
type="text/javascript">
function courbe
(
){
var x,
y,
maxtop,
maxleft,
graph=
""
;
var pixel =
new Image
(
);
pixel.
src =
"pixel.gif"
;
var maxtop =
150
;
var maxleft =
80
;
for (
x=-
10
;
x<=
10
;
x++
){
y =
x*
x ;
graph +=
"<img src='"
+
pixel.
src +
"' style='position:relative;top:"
+
(
maxtop-
y) +
";left="
+ (
maxleft+
x) +
"'>"
;
}
document
.getElementById
(
"legraph"
).
innerHTML =
graph;
}
</script>
</head>
<body onload=
"courbe()"
>
<div id=
"legraph"
style=
"background-color:#dddddd;width:200px;height:200px;top:100px;left:100px;position:absolute;border:1px solid black"
>
</div>
</body>
</html>
Pour que ce code fonctionne correctement, il faut au préalable créer une image (pixel.gif) de 1px sur 1px
function go
(
b){
var d=
""
;
b=
b.getElementsByTagName
(
'*'
);
for(
i=
0
;
i!=
b.
length;
i++
){
d+=
b[
i].
nodeName+
'
\n
'
;
}
alert
(
d)
}
<body onload=
"go(document.body)"
>
Ce script parcours toutes les balises contenues à l'intérieur de la balise passée en paramètre. Il ne reste plus qu'à récupérer ces balises grâce à la fonction getElementsByTagName().
Ce petit script permet de rendre un document non sélectionnable :
function no
(
){
return false;}
document
.
onmousedown
=
no;
if(
typeof document
.
onselectstart!=
"undefined"
){
document
.
onselectstart=
no;
}
Ce script permet de reproduire la comportement de l'attribut unselectable d'Internet Explorer.
Voici le code à mettre afin de remplacer l'attribut target pour les balises <a> en XHTML 1.0 Strict et XHTML 1.1. Le remplacement dépend de la valeur initiale.
Si c'est _blank :
onclick
=
"window.open(this.href); return false;"
Si c'est _self :
onclick
=
"self.location.assign(this.href); return false;"
Si c'est _parent :
onclick
=
"self.parent.location.assign(this.href); return false;"
Si c'est _top :
onclick
=
"top.location.assign(this.href); return false;"
Si c'est nom_de_la_frame :
onclick
=
"window.frames['nom_de_la_frame'].src=this.href; return false;"
Petite précision : normalement, seul le cas de _blank peut être utilisé en XHTML Strict car les (i)frame ne sont pas valides et _self est la valeur par défaut.