Académique Documents
Professionnel Documents
Culture Documents
1. Introduction
JavaScript est un langage de programmation créé par les sociétés
Netscape et Sun Microsystems vers la fin de l'année 1995. C’est un
langage de programmation qui peut être inclus dans des pages
HTML destinées aux navigateurs WWW les plus courants.
JavaScript ne doit pas être confondu avec Java, qui est un langage
beaucoup plus complexe permettant de créer des applications
autonomes.
Son objectif principal : introduire de l'interactivité avec les pages
HTML.
Le moyen : introduire de petits programmes, appelés SCRIPTS,
dans les pages HTML..
1. Introduction
Grâce à ce langage, il est possible d’écrire des pages interactives.
Contrairement à l’utilisation du CGI (Common Gateway Interface,
programmation exécutée côté serveur), les réponses aux
événements déclenchés par le lecteur de la page se font au
niveau du navigateur, sans nécessité d’une transmission vers le
serveur d’où provient la page.
1. Introduction
JS est un langage de programmation de scripts orienté objet,
très simple et conçu pour des non spécialistes
Il concourt à enrichir le HTML, pour développer des pages web
plus conviviales et interactives
Il permet de manipuler le contenu de la page et animer son
aspect graphique
Il contient des gestionnaires d’événements: il reconnaît et réagit
aux demandes de l’utilisateur comme un clic de souris
2. Insertion du code JS dans une page HTML
Il existe trois manières d'insérer du code JavaScript dans un document
HTML :
a)Entre les balises <SCRIPT>....</SCRIPT> dans la section d'en-tête, ou
dans le corps de la page. Dans la section <head> , le code JS n'est pas
exécuté tout de suite. Dans la section <body>, le code est immédiatement
exécuté en même temps que le code HTML est interprété
<!DOCTYPE HTML>
<html>
<head>
<title>Titre</title>
<script type="text/javascript">
<!-- le code js //-->
</script>
</head>
<body>
</body>
</html>
2. Insertion du code JS dans une page HTML
Exemple:
2. Insertion du code JS dans une page HTML
b) Faire appel à l'élément script, mais cette fois-ci le code JavaScript se
trouve dans un fichier externe. Dans ce cas, l'élément script précise à
l'aide de l'attribut src l'emplacement du fichier JavaScript.
<!DOCTYPE HTML>
<html>
<head>
<title>Titre</title>
<script type="text/javascript" src="essai.js"></script>
</head>
<body></body>
</html>
2. Insertion du code JS dans une page HTML
c) Associer le code JS à une balise HTML qui gère un évènement « onClick,
onMouse …».
Exemple:
Les bases de la programmation
JavaScript
3. Les variables
Le concept des variables
Une variable est un objet repéré par son nom, pouvant contenir des
données, qui pourront être modifiées lors de l'exécution du
programme.
En Javascript, les noms de variables peuvent être aussi long que l'on
désire, mais doivent répondre à certains critères :
- un nom de variable doit commencer par une lettre (majuscule
ou minuscule) ou un "_"
- un nom de variables peut comporter des lettres, des chiffres et
les caractères _ et & (les espaces ne sont pas autorisés)
- Les noms de variables ne peuvent pas être des mots réservés
(abstract, goto, var, void, while, void, with, return, private, public…)
3. Les variables
Déclaration des variables
Le JavaScript est un langage très souple au niveau de l'écriture (car
il laisse passer des erreurs...), la déclaration des variables peut se
faire de deux façons :
soit de façon explicite, en faisant précéder la variable du mot
clé var qui permet d'indiquer de façon rigoureuse qu'il s'agit
d'une variable :
var chaine= "bonjour"
soit de façon implicite, en laissant le navigateur déterminer
qu'il s'agit d'une déclaration de variable. Pour déclarer
implicitement une variable, il suffit d'écrire le nom de la variable
suivie du caractère = et de la valeur à affecter :
chaine= "bonjour"
3. Les variables
Déclaration des variables
Même si une déclaration implicite est tout à fait reconnue par le
navigateur, il est plus rigoureux de déclarer les variables de façon
explicite avec le mot var.
Exemple:
3. Les variables
Les types de données dans les variables
le Javascript n'autorise la manipulation que de 4 types de données :
alert(nom_de_la_variable);
alert('Chaîne de caractères');
alert('Chaîne de caractères' + nom_de_la_variable);
alert('Message à afficher');
4. Les boites de dialogue
a) La méthode confirm()
La méthode confirm() est similaire à la méthode alert(), si ce n'est
qu'elle permet un choix entre "OK" et "Annuler".
Lorsque l'utilisateur appuie sur "OK" la méthode renvoie la valeur
true. Elle renvoie false dans le cas contraire...
Elle admet comme alert() un seul paramètre: une chaîne de
caractères...
confirm('Chaîne de caractères');
Exemple:
nvar=confirm('Question');
nvar=true si OK
nvar=false si Annuler
4. Les boites de dialogue
a) La méthode prompt()
La méthode prompt est un peu plus évoluée que les deux
précédentes puisqu'elle fournit un moyen simple de récupérer une
information provenant de l'utilisateur, on parle alors de boîte
d'invite.
La méthode prompt() requiert deux arguments :
• le texte d'invite
• la chaîne de caractères par défaut dans le champ de saisie
prompt('Posez ici votre question','chaîne par défaut');
4. Les boites de dialogue
a) La méthode prompt()
Cette boîte d'invite retourne la valeur de la chaîne saisie par
l'utilisateur, elle retourne la valeur null si jamais aucun texte n'est
saisi...
Exemple:
nvar=prompt('Question', 'chaîne par défaut');
nvar =la valeur de la chaîne insérée (si ok) si non nvar= Null
4. Les boites de dialogue
Exercice: Interprétez les lignes suivantes:
<html>
<head>
<script language="javascript">
function Afficher()
{
nvar=prompt('Insérer votre Prénom', 'Prénom');
alert('Vous avez inséré '+nvar);
ok=confirm('Afficher votre Prénom');
if(ok==true) { document.write('Bonjour '+nvar);}
</script>
</head>
<body>
<input type="button" onclick="Afficher();" value="Valider" />
</body>
</html>
Les structures de contrôle
5. Les structures de contrôle conditionnelles
On appelle structure de contrôle les instructions qui permettent de
tester si une condition est vraie ou non, ce qui permet notamment
de donner de l'interactivité à vos scripts.
Remarque
Le premier élément d'un tableau porte toujours l'indice 0 !
Dans un tableau à n éléments, le nième élément porte ainsi l'indice n-1.
Le langage JavaScript propose l'objet Array, comportant de
nombreuses méthodes permettant de manipuler les tableaux, c'est-
à-dire d'insérer, supprimer, ou extraire des éléments dans le tableau
et également de trier les éléments du tableau.
6. Les tableaux
a) Création de tableau
Le langage JavaScript fournit plusieurs façons de créer un tableau :
Nom_De_La_Fonction(arguments);
7. Les fonctions
Exemple1:
function Affiche(message)
{document.write(message);}
//Appel
Affiche('hello');
Exemple2:
function somme(a,b)
{ som=a+b;
return som;}
//Appel
Res=somme(1,3);
7. Les fonctions
Exemple3:
7. Les fonctions
c) La portée des variables
Soit le code suivant :
=> On déclare une variable dans laquelle on stocke du texte puis on crée une fonction qui
se charge de l'afficher à l'écran et enfin on exécute cette dernière : Pas de problème
7. Les fonctions
c) La portée des variables
Soit le code suivant :
=> Aucun résultat !! L'erreur (retourné par le navigateur) indique que la variable x n'existe
pas. Toute variable déclarée dans une fonction n'est utilisable que dans
cette même fonction !
La gestion des événements en
JavaScript
Qu'appelle-t-on un événement?
Les événements sont des actions de l'utilisateur, qui vont pouvoir
donner lieu à une interactivité. L'événement par excellence est le
clic de souris, car c'est le seul que le HTML gère.
Exemple:
<html>
<head>
<script language="javascript">
function controle() {
var test = document.form1.input.value;
alert("Vous avez tapé : " + test);
}
</script>
</head>
<body>
<form name="form1">
<INPUT TYPE="text" NAME="input" VALUE=""><BR>
<INPUT TYPE="button" NAME="button" VALUE="Contrôler" onClick="controle()">
</form>
</body>
</html>
Accès aux textes contenus dans les champs
Exemple:
<html>
<head>
<script language="javascript">
function afficher() {
var testin =document. form2.input.value;
document.form2.output.value=testin
}
</script>
</head>
<body>
<form name="form2">
<INPUT TYPE="text" NAME="input" VALUE=""> Zone de texte d'entrée <BR>
<INPUT TYPE="button" NAME="bouton" VALUE="Afficher" onClick="afficher()"><BR>
<INPUT TYPE="text" NAME="output" VALUE=""> Zone de texte de sortie
</form>
</body>
</html>
Accès aux textes contenus dans les champs
C) Accès aux éléments de type boutons radio
Les boutons radio sont utilisés pour noter un choix, et seulement un
seul, parmi un ensemble de propositions.
<html>
<head>
<script language="javascript">
function choixprop() {
if (form3.choix[0].checked) { alert("Vous avez choisi la proposition " + form3.choix[0].value) };
if (form3.choix[1].checked) { alert("Vous avez choisi la proposition " + form3.choix[1].value) };
if (form3.choix[2].checked) { alert("Vous avez choisi la proposition " + form3.choix[2].value) };
}
</script>
</head>
<body>
Entrez votre choix :
<form name="form3">
<INPUT TYPE="radio" NAME="choix" VALUE="1">Choix numéro 1<BR>
<INPUT TYPE="radio" NAME="choix" VALUE="2">Choix numéro 2<BR>
<INPUT TYPE="radio" NAME="choix" VALUE="3">Choix numéro 3<BR>
<INPUT TYPE="button"NAME="but" VALUE="Quel et votre choix ?" onClick="choixprop()">
</form>
</body>
</html>
Accès aux textes contenus dans les champs
C) Accès aux éléments de type boutons radio
Accès aux textes contenus dans les champs
C) Accès aux éléments de type boutons radio
Dans le formulaire nommé form3, on déclare trois boutons
radio. Notez que l'on utilise le même nom pour les trois
boutons. Vient ensuite un bouton qui déclenche la fonction
choixprop().
Cette fonction teste quel bouton radio est coché. On accède aux
boutons sous forme d'indice par rapport au nom des boutons
radio soit choix[0], choix[1], choix[2]. On teste la propriété
checked du bouton par if(form3.choix[x].checked).
Dans l'affirmative, une boite d'alerte s'affiche. Ce message
reprend la valeur attachée à chaque bouton par le chemin
form3.choix[x].value.
Accès aux textes contenus dans les champs
C) Accès aux éléments de type boutons radio
La fonction javascript a
comme paramètre le
groupe des radio-boutons.
Une boucle parcourt la liste des
boutons du groupe. On repère le
bouton qui a la propriété checked à
true et on affiche alors la valeur
correspondante
Accès aux textes contenus dans les champs
B) Accès aux éléments de type cases à cocher
Les boutons case à cocher sont utilisés pour noter un ou plusieurs
choix (pour rappel avec les boutons radio un seul choix) parmi un
ensemble de propositions. A part cela, sa syntaxe et son usage est
tout à fait semblable aux boutons radio sauf en ce qui concerne
l'attribut name.
Accès aux textes contenus dans les champs
B) Accès aux éléments de type cases à cocher
i) Cocher ou décocher un choix
Pour détecter qu'une case est cochée, il faut utiliser sa propriété
checked.
document.nom_formulaire.nom_element.checked = true/false
Fonctions à créer:
• une fonction pour vérifier le pseudo (on vérifie juste la longueur :
entre 2 et 25 caractères) ;
• une pour l'adresse e-mail;
• une pour l'âge (on va dire qu'il doit être compris entre 5 et 111 ans) ;
• une méga-fonction (à partir des précédentes) qui vérifie tout.
Vérification d’un formulaire
a) Fonction pour changer la couleur de fond d’un champ donné
Si le formulaire est mal rempli, en plus de bloquer l'envoi, on va
colorer les champs qui posent problème. On va modifier sa couleur
d'arrière-plan.
Vérification d’un formulaire
b) Vérification du champ pseudo
Vérifier que la longueur est correcte : entre 2 et 25 caractères.