aboutsummaryrefslogtreecommitdiff
path: root/files/fr/web/api/htmloptionelement/option/index.md
blob: 70ed813c2df7cbae546a5a41ff9b15fb3a774c0b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
---
title: Option()
slug: Web/API/HTMLOptionElement/Option
tags:
  - API
  - Constructeur
  - HTML DOM
  - HTMLOptionElement
translation_of: Web/API/HTMLOptionElement/Option
---
{{APIRef("HTML DOM")}}

Le constructeur **`Option()`** permet de créer un nouvel objet {{domxref("HTMLOptionElement")}}.

## Syntaxe

    var optionElementReference = new Option(text, value, defaultSelected, selected);

### Parameters

- `text` {{optional_inline}}
  - : Une chaîne de caractères {{domxref("DOMString")}} représentant le contenu de l'élément, c'est-à-dire le texte affiché. Si cet argument n'est pas spécifié, c'est la chaîne vide qui sera utilisée.
- `value` {{optional_inline}}
  - : Une chaîne de caractères {{domxref("DOMString")}} représentant la valeur de {{domxref("HTMLOptionElement")}}, c’est-à-dire l’attribut HTML `value` de l'élément {{htmlelement("option")}}. Si cet argument n'est pas fourni, ce sera la valeur de `text` qui sera reprise comme valeur (par exemple pour l'élément {{htmlelement("select")}} associé lorsque le formulaire est envoyé au serveur).
- `defaultSelected` {{optional_inline}}
  - : Un {{domxref("Boolean")}} qui définit la valeur de l'attribut {{htmlattrxref("selected", "option")}}, c'est-à-dire que cette {{htmlelement("option")}} sera la valeur par défaut sélectionné dans l'élément {{htmlelement("select")}} lors du premier chargement de la page. S'il n'est pas spécifié, la valeur `false` sera utilisée par défaut.
- `selected` {{optional_inline}}
  - : Un {{domxref("Boolean")}} qui définit l'état sélectionné de l'option, la valeur par défaut est `false` (non sélectionné). Si cet argument est absent et même si l'argument `defaultSelected` vaut `true`, l'option ne sera pas pas sélectionnée.

## Exemples

### Ajouter de nouvelles options

```js
/* Imaginons qu'on ait le code HTML suivant dans le document
<select id='s'>

</select>
*/

var s = document.getElementById('s');
var options = [Quatre, Cinq, Six];

options.forEach(function(element,key) {
    s[key] = new Option(element,key);
});
```

### Ajouter des options avec différents paramètres

```js
/* Imaginons qu'ont ait le code HTML suivant dans le document
<select id="s">
  <option>Premier</option>
  <option>Deuxième</option>
  <option>Troisième</option>
</select>
*/

var s = document.getElementById('s');
var options = [ 'zéro', 'un', 'deux' ];

options.forEach(function(element, key) {
  if (element == 'zéro') {
    s[s.options.length] = new Option(element, s.options.length, false, false);
  }
  if (element == 'un') {
    s[s.options.length] = new Option(element, s.options.length, true, false); // Ajouter l'attribut "selected"
  }
  if (element == 'deux') {
    s[s.options.length] = new Option(element, s.options.length, false, true); // Sélectionnera l'option
  }
});

/* Résultat dans le DOM / HTML modifié :
<select id="s">
  <option value="0">zéro</option>
  <option value="1" selected="">un</option>
  <option value="2">deux</option> // L'utilisateur verra cette option sélectionnée
</select>
*/
```

## Spécifications

| Spécification                                                                                                                             | État           | Commentaires |
| ----------------------------------------------------------------------------------------------------------------------------------------- | -------------- | ------------ |
| [HTML5 La définition de Option dans cette spécification.](http://www.w3.org/TR/2012/WD-html5-20121025/the-option-element.html#dom-option) | Recommendation |              |