2013-04-04 2 views
0

j'ai entrée comme ceci:Comment connecter une entrée et sélectionner une option?

<input name="men" id="men" type="text" size="10" maxlength="2"/> 

et sélectionnez

<select id="menlist" name="menlist"> 
    <option value="1">Sausis</option> 
    <option value="2">Vasaris</option> 
    <option value="3">Kovas</option> 
    <option value="4">Balandis</option> 
</select> 

Comment puis-je connecter input id men et select id menlist avec JavaScrip? par exemple: si l'utilisateur écrit dans le champ de saisie 2 -> sélectionner la valeur de l'option en changeant à 2;

+0

Qu'est-ce que vous avez essayé? –

+0

Avez-vous déjà essayé d'écrire un code JavaScript? – j08691

Répondre

0

On ne sait pas de votre question wether il est correct d'utiliser jQuery. S'il est alors vous pouvez le faire

$(function(){ 
    $("#men").keyup(function(){ 
     var value=$(this).val(); 
     $("#menlist option[selected]").removeAttr("selected"); 
     $("#menlist option[value=" + value + "]").attr("selected", "selected"); 
    }); 
    $("#menlist").change(function(){ 
     $("#men").val($(this).val()); 
    }); 
}); 

Voici une jsFiddle

De cette façon, vous pouvez avoir des valeurs pour les options dans un ordre quelconque. Assurez-vous simplement qu'ils sont uniques. Vous pouvez avoir des noms triés dans le select par exemple.

MISE À JOUR Ajout d'un gestionnaire pour modifier la valeur d'entrée lors de la sélection des modifications.

+0

Cela fonctionne parfaitement! Merci. – Tomas

+0

Et une autre question. Est-il possible de faire dans la même page si l'utilisateur sélectionne d'abord l'option alors la valeur des hommes change? – Tomas

+0

Voir la réponse mise à jour. jsFiddle a également été mis à jour. – peterm

0

Le champ de saisie événement keyup invoquez une fonction qui définit la valeur sélectionnée de menlist à la valeur tapé.

<input name="men" id="men" onkeyUp="func1()" type="text" size="10" maxlength="2"/> 

function func1() 
{ 
var txtval = parseInt(document.getElementById("men").value); 
document.getElementById("menlist").selectedIndex= txtval; 
} 
+0

ne pas oublier le point-virgule! (Je sais que ce n'est pas essentiel, mais les bonnes pratiques doivent être maintenues!) – imulsion

0

<script> 
function change_select(val) 
{ 
    document.getElementById('menlist').selectedIndex = val; 
} 
</script> 
Questions connexes