Un formulaire est une balise <form> contenant des éléments de saisies (champs de texte, boutons, cases à cocher, menus, …).
La balise <form> contient un attribut action="url" où url est une URL cible.
Si le formulaire contient un bouton de soumission, alors l'ensemble des valeurs saisies dans les éléments du formulaire est envoyé à l'URL cible, qui est chargée comme une nouvelle page.
L'utilisation de formulaire pour envoyer des données à un serveur n'est pas au programme du bloc 1
Par contre on va utiliser les éléments de saisies (en particulier les boutons) pour illustrer la notion d'évènement Javascript.
On peut placer un champ de texte dans un formulaire au moyen de la balise <input type="text" />.
]]>
Apperçu:
Attributs:
Pour des textes multilignes, on utilise la balise <textarea />.
du texte!
]]>
Apperçu: Attributs:
On peut pré-remplir la zone en mettant du texte entre la balise ouvrante et fermante.
On peut définir une liste déroulante avec les balises <select> et <option>
]]>
Apperçu: Attributs:
Le contenu de chaque élément option est celui affiché dans la liste.
On peut placer bouton dans un formulaire au moyen de la balise <button>.
Clique Moi!]]>
Apperçu:
Attributs:
Il existe bien d'autres éléments de saisie, mais ceux la sont suffisants pour s'initier à la programmation côté client.
Comme tous les autres éléments HTML, le style de ces éléments est modifiable en CSS.
Le modèle du Web présenté dans le cours 1 est statique. Les documents sont stockés sous forme de fichiers physiques, sur le disque dur d'un serveur.
Très tôt on a souhaité générer dynamiquement le contenu d'une page.
1993 : invention des scripts CGI qui permettent au serveur de récupérer les paramètres d'une requête HTTP et de générer du HTML en réponse.
La programmation Web côté serveur évolue ensuite (apparition de PHP en 1994, puis possibilité ensuite de programmer le côté serveur dans des langages plus robustes, comme Java, …)
Un problème subsiste : le manque d'interactivité
formulaire HTML → envoi au serveur → calcul de la réponse →
retour au client → rechargement de page. Problème
d'interactivité (latence réseau, rendu graphique d'une
nouvelle page, …).
Avec l'arrivée de Java (1995) la notion d'Applet fait son apparition. Ils sont (pour l'époque) une manière portable d'exécuter du code côté client.
Problème : Java est trop lourd à l'époque (c'est un vrai langage, il fait peur aux créateurs de site, les performances sont médiocres, …).
1995 : Brendan Eich (Netscape) crée Javascript en 10 jours. Il emprunte de la syntaxe à Java/C, et Netscape Navigator 2.0 embarque un interpréteur Javascript en standard
Le langage est rapidement adopté, mais chaque navigateur implémente sa propre variante. Le langage lui-même est standardisé en 1996 (ECMAScript, standardisé par l'ECMA).
2009 : Standardisation ISO de ECMAScript
5 (2011 pour la version 5.1)
2015 : Standardisation ISO de ECMAScript
6
2016 : Standardisation ISO de ECMAScript
7
2017 : Standardisation ISO de ECMAScript
8
2018 : Standardisation ISO de ECMAScript
9
…
…