Может ли jQuery динамически изменять поле "username" на основе поля "name"?

В основном у меня есть два поля ввода, "имя" и "имя пользователя".

Идея заключается в том, что поле "имя пользователя" будет изменяться в зависимости от того, что вводится в поле "имя" - динамически. Мне также нужно, чтобы поле имени пользователя было только в нижнем регистре и чтобы пробелы превращались в тире. Я думал об использовании onkeydown, но я не мог заставить его сделать что-нибудь.

Я искал вокруг, но не могу найти то, что я ищу. У кого-нибудь есть идеи?

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

^^ основные формы ввода.

РЕДАКТИРОВАТЬ:

Вот код, который я получил, если кто-то ищет что-то вроде этого:

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);
});

1 ответ

Решение

Вы можете установить событие keyup:

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

Это будет вызываться каждый раз, когда пользователь вводит одну букву в поле имени.

Другие вопросы по тегам