2012-07-18 2 views
2

Je saisis toutes les entrées d'un formulaire à 5 onglets. Lorsque je les passe en revue, je les ajoute à une section de révision. Je l'ai bien fonctionner mais je veux montrer le texte des listes déroulantes de sélection plutôt que la valeur que la valeur n'aurait pas de sens pour l'utilisateur. Voici quelques extraits de code que j'utilise. Ceci est à l'intérieur et $ (: input.each (function() {} Je vérifie pour voir si c'est un select.Si oui, je mets une variable tmp et ajoute '_in' au nom car j'ai tous les noms de champs plus sur l'onglet de confirmation, puis je vérifie la longueur de la nouvelle variable pour m'assurer qu'elle se trouve sur l'onglet de confirmation, si c'est le cas, mettez le code HTML à jour, le problème est qu'il affiche toutes les options du texte déroulant.) il donne seulement la valeur de celle sélectionnée.Récupère le texte de la sélection lorsque vous parcourez chaque entrée

//Gives all text options from the drop down. 
if ($(this).prop('type') == 'select-one') { 
    var tmp = '#'+$(this).attr('name')+'_in'; 
    if ($(tmp).length > 0) { 
    $(tmp).html($(this).text()); 
    }   
} 

//Gives only value of selected option from drop down. 
if ($(this).prop('type') == 'select-one') { 
    var tmp = '#'+$(this).attr('name')+'_in'; 
    if ($(tmp).length > 0) { 
    $(tmp).html($(this).val()); 
    } 

solution fixe

if ($(this).prop('type') == 'select-one') { 
    var tmp = '#'+$(this).attr('name')+'_in'; 
    var tmp2 = '#'+$(this).attr('name')+' option:selected'; 
    if ($(tmp).length > 0) { 

tmp3 = $(tmp2).text(); 
$(tmp).html(tmp3); 
}   
} 
+0

Vérifiez que les deux blocs de code sont identiques? – Adil

Répondre

1

Vous pouvez obtenir le texte d'une sélection à l'aide

$("#yourdropdownid option:selected").text();

+0

merci. J'ai dû le modifier et j'ai modifié l'original pour montrer comment je l'ai réparé avec votre aide. – user1535268

Questions connexes