2010-06-18 23 views
2

Fondamentalement, j'ai deux champs de saisie, "nom" et "nom d'utilisateur". L'idée est que le champ "nom d'utilisateur" change en fonction de ce qui est entré dans le champ "nom" - dynamiquement. J'ai également besoin que le champ de nom d'utilisateur soit en minuscules seulement et que les espaces soient changés en tirets. Je pensais utiliser onkeydown mais je ne pouvais pas le faire pour faire quoi que ce soit. J'ai regardé autour de moi, mais je n'arrive pas à trouver ce que je cherchais. Quelqu'un a une idée?Can jQuery peut-il modifier dynamiquement un champ "nom d'utilisateur" basé sur un champ "nom"?

<input type="text" name="name" id="name" class="field" /> 
<input type="text" name="username" id="username" class="field" /> 

^^ entrées de forme de base.

EDIT:

Voici le code que je suis travailler, si quelqu'un d'autre est à la recherche de quelque chose comme ceci:

function fill_username(value) { 
    $("#username").val(value); 
} 
$("#client-name").keyup(function() { 
    var value = $(this).val(); 
    var value = value.replace(/\s+/g, '-').toLowerCase(); 
    fill_username(value); 
}); 

Répondre

4

Vous pouvez définir l'événement keyup:

$('#name').keyup(function() { 
    fill_username(); 
}); 

Ce sera appelé chaque fois que l'utilisateur entre une lettre dans le champ de nom.

+0

Merci beaucoup! Je ne sais pas pourquoi j'ai eu des problèmes avec les choses keyup, de toute façon, mais appeler la fonction de cette façon fonctionne très bien :) – SoulieBaby

+0

Pas de problème, content d'avoir aidé :) – Rabas