2010-10-24 7 views
0

Je rencontre un problème avec une balise SELECT dans un formulaire HTML sur une page ASP. Cela aura un nombre variable d'options en dessous, et est généré dynamiquement à partir d'une base de données. Code ci-dessousHTML Sélectionner le texte retourné par l'utilisateur et non le champ de valeur

<select name='select1' id='select1' size='10'> 
    <option value="123456789">User-Friendly Text 1</option> 
    ... 
    <option value="10000039373766232452">Text 2</option> 
</select> 

Le problème est que lorsque le formulaire est présenté à la page suivante asp, la valeur retournée est « Text 2 » par exemple, ou « User-Friendly Text 1 ». Quelqu'un peut-il expliquer pourquoi le texte est soumis et non la valeur de la sélection? J'ai besoin de la valeur plus que du texte !!

Je l'ai réduit la question à posséder est l'origine du problème ici ce peu de JavaScript

var lb = document.getElementById('fb_friend'); 
arrTexts = new Array(); 
for(i=0; i<lb.length; i++) { 
    arrTexts[i] = lb.options[i].text; 
} 
arrTexts.sort(); 
for(i=0; i<lb.length; i++) { 
    lb.options[i].text = arrTexts[i]; 
    lb.options[i].value = arrTexts[i]; 
} 

La ligne lb.options[i].value = arrTexts[i];.

+2

Pouvez-vous inclure le code ASP pour tirer la valeur? –

+0

Juste une supposition: Est-ce lié à la 'manquant pour l'attribut de taille? – stefanglase

+0

Le code ASP utilise un httpwebrequest, puis utilise un analyseur JSON pour générer la sortie dans une boucle. –

Répondre

0

Eh bien, cela donne un éclairage positif sur mon premier message ... désolé les gars. Suppression de la ligne de Java qui changeait la valeur. Je pense que c'est un signe que 16 heures de codage direct suffisent maintenant. Pardon!