2010-11-24 8 views
1

J'ai un simple formulaire html avec champ de texte avec id = "zip" ce que je veux faire est de surveiller ce champ et chaque fois que la valeur change active/désactive un tableau de cases à cocher basé sur l'entrée. Actuellement, l'événement de changement ne se déclenche que lorsque l'onglet ou le champ de saisie zip. J'ai essayé d'expérimenter avec keypress, mais il serait toujours donner la valeur du champ texte moins le caractère actuel:JQuery Examiner le premier caractère dans le champ de texte comme il est tapé

<form id+"testform"> 
Zip Code <input id="zip" value="" /><br /> 
Zip 4<input type="checkbox" id="check_one" /><br /> 

Zip 3<input type="checkbox" id="check_two" /><br /> 
</form> 

<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.4.min.js"></script> 


<script type="text/javascript"> 
$('#zip').change(function() { 
var zipCode = $(this).val(); 
zipCode = zipCode.substring(0,1); 



if(zipCode == 3) { 
    $("#check_one").attr('disabled','disabled'); 
    $("#check_two").removeAttr('disabled'); 


} else if (zipCode == 4) { 
    $("#check_one").removeAttr('disabled'); 
    $("#check_two").attr('disabled','disabled'); 


} else { 
    $("#check_one").removeAttr('disabled'); 
    $("#check_two").removeAttr('disabled'); 

} 
}); 
</script> 

Y at-il un événement jQuery approprié qui se déclenche après chaque caractère est entrée?

Répondre

5

onkeyup devrait être l'événement que vous recherchez.

http://api.jquery.com/keyup/

+0

+1 - cela devrait faire l'affaire (je l'espère). – karim79

+1

merci, cela fait l'affaire, devez attendre 6 minutes pour accepter la réponse si. – jkilbride

+1

cool, heureux je pourrais aider. –

Questions connexes