Page 1 sur 1

Ajout d'un élément dans une liste

Posté : 21 nov. 2018, 13:54
par Emilie
Bonjour! Je suis débutante en programmation et je suis sur un projet dont je n'arrive pas en m'en sorti.
Voici mon code de formulaire
J'arrive à ajouter mais j'actualise la valeur ne se trouve plus dans ma liste. Aidez moi


<form method="POST" action="dbhabilitation.php">


<label><strong>Applicatifs</strong>
<select name ="nom_applicatif" required="" onChange="alert('Ajout : '+this.options[this.selectedIndex].text+'nValeur : '+this.options[this.selectedIndex].value)">
<option value="" selected="selected"></option>
<option value="win">Windows</option>
<option value="message">Messagerie</option>
<option value="internet">Internet</option>
<option value="win">Windows</option>
<option value="ORION">ORION</option>
<option value="VSIGN/VSCAN">VSIGN/VSCAN</option>
<option value="WEBCLEARING">WEBCLEARING</option>
<option value="WIN FTP">WIN FTP</option>
<option value="MONEY GRAM">MONEY GRAM</option>

</select>

</label>
<input type="button" name="Ajout" onclick="Augmenter(this.form)">
<input type="text" name="ajouter" value="">

<SCRIPT LANGUAGE="JavaScript">
function Augmenter(form) {
var ajout=new Option(form.ajouter.value);
form.nom_applicatif.options[form.nom_applicatif.options.length]=ajout;
}

Re: Ajout d'un élément dans une liste

Posté : 21 nov. 2018, 14:00
par webmaster
C'est le fonctionnement normal...

Le script JS de la page modifie le contenu du document en cours de consultation
Une actualisation de la page reinitialise tout le document avec son code source d'origine

Pour prendre en compte l'action de l'utilisateur sur le formulaire, il faut :
1 - envoyer au serveur l'action effectuée (ici l'ajout d'un élément)
2 - enregistrer sur le serveur (dans la base de données) le nouvel élément
3 - utiliser les éléments de la base de donnée pour reconstruire la liste du formulaire

On n'est plus du tout dans la programmation JS basique. Mais on entre dans la programmation complete avec les trois éléments du web :
- interface utilisateur avec HTML/JS/CSS
- serveur avec PHP ou Node.js par exemple
- base de données

Re: Ajout d'un élément dans une liste

Posté : 22 nov. 2018, 06:41
par Emilie
Bonjour ! Et comment on le fait aide moi stp

Re: Ajout d'un élément dans une liste

Posté : 07 févr. 2019, 22:13
par klimbo
Emilie a écrit :
21 nov. 2018, 13:54
Bonjour! Je suis débutante en programmation et je suis sur un projet dont je n'arrive pas en m'en sorti.
Voici mon code de formulaire
J'arrive à ajouter mais j'actualise la valeur ne se trouve plus dans ma liste Pnr Status TextNow VPN. Aidez moi


<form method="POST" action="dbhabilitation.php">


<label><strong>Applicatifs</strong>
<select name ="nom_applicatif" required="" onChange="alert('Ajout : '+this.options[this.selectedIndex].text+'nValeur : '+this.options[this.selectedIndex].value)">
<option value="" selected="selected"></option>
<option value="win">Windows</option>
<option value="message">Messagerie</option>
<option value="internet">Internet</option>
<option value="win">Windows</option>
<option value="ORION">ORION</option>
<option value="VSIGN/VSCAN">VSIGN/VSCAN</option>
<option value="WEBCLEARING">WEBCLEARING</option>
<option value="WIN FTP">WIN FTP</option>
<option value="MONEY GRAM">MONEY GRAM</option>

</select>

</label>
<input type="button" name="Ajout" onclick="Augmenter(this.form)">
<input type="text" name="ajouter" value="">

<SCRIPT LANGUAGE="JavaScript">
function Augmenter(form) {
var ajout=new Option(form.ajouter.value);
form.nom_applicatif.options[form.nom_applicatif.options.length]=ajout;
}
Bonjour,

La solution donnée par webmaster est une excellente solution pour garder les valeurs pour d'autres accès (même à partir d'autres navigateurs).

Comment le faire ? Il faut remplacer le button par un input de type submit qui envoie les données à une page PHP.

Si vous voulez rester avec JS côté client, vous pouvez utiliser le stockage local disponible avec HTML5.