Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1390 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Probleme de creation d'une nouvelle option

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Probleme de creation d'une nouvelle option

n°581806
geulderack
Posté le 02-12-2003 à 21:47:16  profilanswer
 

Bonjour,
 
Lorsque je cree une nouvelle option dans une select (jusque la tout va bien ;-) ).
 
Je peux recuperer la valeur de ma nouvelle option mais pas son nom .
 
Pour tester la recuperation du nom de cette option j'ai cree un fonction qui va m'afficher en me mettant sur l'option une alert avec sa valeur puis une autre qui va m'afficher son nom .
 
Malheureusement je recupere bien sa valeur mais pas le nom il m'affiche "undefined".
 
Voici le code :
 

Citation :

<html>
<head>
<script language="javascript">  
function TESTLIST()
{
var NBO
var VALA
var NAME
 
VAL=document.FORM1.liste.options[document.FORM1.liste.selectedIndex].value;
NAME=document.FORM1.liste.options[document.FORM1.liste.selectedIndex].name;
alert(VAL);
alert(NAME);
}  
</script>
<script language="javascript">
function Sports(form,list)
{
list.options.length=0;
var o=new Option("Tennis","Tennis",true, true );
form.liste.options[form.liste.options.length]=o;
var o=new Option("Basket Ball","Basket Ball",true, true );
form.liste.options[form.liste.options.length]=o;
}
</script>
 <title>Untitled</title>
</head>
<body>
<br/>
<form action="" name="FORM1">
<input type="radio" name="choix" value="Sports" OnClick="Sports(this.form,this.form.liste)">Sports
<select name="liste" align="top" size="6">
<option value="Liste vide">Liste vide...
</select>
<input type="button" value="TESTLIST" onclick="TESTLIST();">
</form>
</body>
</html>

 
 
 
 
   
 

mood
Publicité
Posté le 02-12-2003 à 21:47:16  profilanswer
 

n°582160
alien_nan
Posté le 03-12-2003 à 10:26:51  profilanswer
 

Geulderack a écrit :

Bonjour,
 
Lorsque je cree une nouvelle option dans une select (jusque la tout va bien ;-) ).
 
Je peux recuperer la valeur de ma nouvelle option mais pas son nom .
 
Pour tester la recuperation du nom de cette option j'ai cree un fonction qui va m'afficher en me mettant sur l'option une alert avec sa valeur puis une autre qui va m'afficher son nom .
 
Malheureusement je recupere bien sa valeur mais pas le nom il m'affiche "undefined".
 
Voici le code :
 

Citation :

<html>
<head>
<script language="javascript">  
function TESTLIST()
{
var NBO
var VALA
var NAME
 
VAL=document.FORM1.liste.options[document.FORM1.liste.selectedIndex].value;
NAME=document.FORM1.liste.options[document.FORM1.liste.selectedIndex].name;
alert(VAL);
alert(NAME);
}  
</script>
<script language="javascript">
function Sports(form,list)
{
list.options.length=0;
var o=new Option("Tennis","Tennis",true, true );
form.liste.options[form.liste.options.length]=o;
var o=new Option("Basket Ball","Basket Ball",true, true );
form.liste.options[form.liste.options.length]=o;
}
</script>
 <title>Untitled</title>
</head>
<body>
<br/>
<form action="" name="FORM1">
<input type="radio" name="choix" value="Sports" OnClick="Sports(this.form,this.form.liste)">Sports
<select name="liste" align="top" size="6">
<option value="Liste vide">Liste vide...
</select>

<input type="button" value="TESTLIST" onclick="TESTLIST();">
</form>
</body>
</html>

 
 


 
 
Il manque pas un </option> ??

n°582167
jagstang
Pa Capona ಠ_ಠ
Posté le 03-12-2003 à 10:34:30  profilanswer
 


var NBO
var VALA
var NAME
 
VAL=document.FORM1.liste.options[document.FORM1.liste.selectedIndex].value;
 
 
utilise le bon nom de variable.  
penses aussi à mettre quelques ';' par ci par là


Message édité par jagstang le 03-12-2003 à 10:35:41
n°582179
geulderack
Posté le 03-12-2003 à 10:55:58  profilanswer
 

JagStang a écrit :


var NBO
var VALA
var NAME
 
VAL=document.FORM1.liste.options[document.FORM1.liste.selectedIndex].value;
 
 
utilise le bon nom de variable.  
penses aussi à mettre quelques ';' par ci par là


 
Maleureusement meme apres correction de mes variable et rajout de ; rien ne change tjs undefined !!!!
 
Je pige rien !!!

n°582183
geulderack
Posté le 03-12-2003 à 10:59:33  profilanswer
 

Je redonne le code avec quelques correction :
 

Citation :

<html>
<head>
 <title>Untitled</title>
<script language="javascript">  
function TESTLIST()
{
var NBO;
var VAL;
var NAME;
NBO=document.FORM1.liste.length;
alert(NBO);
VAL=document.FORM1.liste.options[document.FORM1.liste.selectedIndex].value;
NAME=document.FORM1.liste.options[document.FORM1.liste.selectedIndex].name;
alert(VAL);
alert(NAME);
}  
</script>
<script language="javascript">
function Sports(form,list)
{
list.options.length=0;
var o=new Option("Tennis","Tennis",true, true );
form.liste.options[form.liste.options.length]=o;
var o=new Option("Basket Ball","Basket Ball",true, true );
form.liste.options[form.liste.options.length]=o;
}
</script>
</head>
<body>
<form action="" name="FORM1">
<input type="radio" name="choix" value="Sports" OnClick="Sports(this.form,this.form.liste)">Sports
<select name="liste" align="top" size="6">
<option value="Liste vide">Liste vide...</option>
</select>
<input type="button" value="TESTLIST" onclick="TESTLIST();">
</form>
</body>
</html>

n°582187
Mara's dad
Yes I can !
Posté le 03-12-2003 à 11:01:20  profilanswer
 

Ben y'a pas de nom !
 
Tu pense qu'il va te donner quoi ?
 
Si t'en veux un :
<option value="Liste vide" name="toto">Liste vide...</option>
 
Mais çà n'à pas un gros intérêt !
 
L'attribut name est utilisé comme identifiant coté serveur pour un champs de saisie. Pour une option çà n'a pas de sens.
 
En revanche, tu veux peut-être le texte de l'option. Alors la propriété est text.
 
Remarque Tu devrais donner des id à tes éléments. C'est plus propre pour y accéder en Javascript :
 

Code :
  1. <script language="javascript"> 
  2. function TESTLIST()
  3. {
  4. var l = document.getElementById('List_1');
  5. var o;
  6. if( l.selectedIndex >= 0 )
  7. {
  8. o = l.options[l.selectedIndex];
  9. alert( o.value );
  10. alert( o.text );
  11. }
  12. else
  13. {
  14. alert( "Pas d'option sélectionnée !" );
  15. }
  16. }
  17. </script>
  18. ...
  19. <select name="liste" align="top" size="6" id="List_1">
  20. <option value="Liste vide">Liste vide...</option>
  21. </select>


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°582198
geulderack
Posté le 03-12-2003 à 11:26:28  profilanswer
 

Mara's dad a écrit :

Ben y'a pas de nom !
 
Tu pense qu'il va te donner quoi ?
 
Si t'en veux un :
<option value="Liste vide" name="toto">Liste vide...</option>
 
Mais çà n'à pas un gros intérêt !
 
L'attribut name est utilisé comme identifiant coté serveur pour un champs de saisie. Pour une option çà n'a pas de sens.
 
En revanche, tu veux peut-être le texte de l'option. Alors la propriété est text.
 
Remarque Tu devrais donner des id à tes éléments. C'est plus propre pour y accéder en Javascript :
 

Code :
  1. <script language="javascript"> 
  2. function TESTLIST()
  3. {
  4. var l = document.getElementById('List_1');
  5. var o;
  6. if( l.selectedIndex >= 0 )
  7. {
  8. o = l.options[l.selectedIndex];
  9. alert( o.value );
  10. alert( o.text );
  11. }
  12. else
  13. {
  14. alert( "Pas d'option sélectionnée !" );
  15. }
  16. }
  17. </script>
  18. ...
  19. <select name="liste" align="top" size="6" id="List_1">
  20. <option value="Liste vide">Liste vide...</option>
  21. </select>




 
C'est le nom de la nouvelle option qu'il me faut et nom pas celle existante je te remet le code de creation de l'option  
 
new option("1er parametre" = Value , 2eme = Name)
 
Le texte m'importe peu en fait c'est vraiment le nom que je veux de plus sur des options deja cree au chargement j'arrive bien a recuperer leurs nom c'est seulement lorsque je cree une nouvelle option que j'ai un probleme alors je ne sais meme pas si il lui cree bien un nom ...
 
Merci  
 
 

n°582211
geulderack
Posté le 03-12-2003 à 11:40:33  profilanswer
 

Non en fait c'est toi qui as raison Mea culpa je ne peux recuperer que le tex c'est pas grave je vais utiliser cela  
 
merci beaucoup ....

n°582214
Mara's dad
Yes I can !
Posté le 03-12-2003 à 11:45:25  profilanswer
 

Edit : Trop tard :D
 
Non, non et N O N !
 
Ce qui tu appelle nom n'est pas un attribut NAME !
 
Démo:
 

Code :
  1. <html>
  2. <form action="" name="FORM1">
  3. <select name="Liste" align="top" size="6" id="List_1"></select>
  4. <br>
  5. <textarea id="debug" rows="10" cols="100" ></textarea>
  6. </form>
  7. <script>
  8. var t = document.getElementById('debug');
  9. var l = document.getElementById('List_1');
  10. var o=new Option("Param 1","Param 2" );
  11. o.name='Nom qui sert à rien !';
  12. o.id='Id qui peut servir';
  13. l.options[l.options.length] = o;
  14. t.value = l.innerHTML + "\n\no.value = " + o.value + "\no.text = " + o.text + "\no.name = " + o.name + "\no.id = " + o.id;
  15. </script>
  16. </body>
  17. </html>


 
Essaye ce code dans ton navigateur et tu verras !


Message édité par Mara's dad le 03-12-2003 à 11:45:56

---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Probleme de creation d'une nouvelle option

 

Sujets relatifs
problème pour recevoir les donné dun formulaire html/jsscripts de création de tables et AMC designer 6.1
[java] probleme avec un passage d'argument...[ASP] fileexists probleme
probleme d'upload[ASP]nouvelle fenetre + execution automatique d'une fonction
Probleme calculProbleme en asp
probleme avec les session [RESOLU]Probleme avec PI ...
Plus de sujets relatifs à : Probleme de creation d'une nouvelle option


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR