Автоматически добавлять значение в поле ввода текста onfocus, используя JavaScript - PullRequest
0 голосов
/ 24 июня 2011

В форме создания пользователь вводит свое имя, затем свою фамилию, и когда он фокусируется на текстовом поле имени пользователя, строка фамилии.name должна добавляться автоматически. Другими словами, используя javascript, когда поле ввода текста USERNAME получает фокус, значения полей ввода текста NAME & SURNAME должны автоматически добавляться к нему и разделяться точкой (.) = Surname.name

     <h:outputLabel value="#{bundle.CreateUsersLabel_name}" for="name" />
                    <h:inputText id="name" value="#{usersController.selected.name}" title="#{bundle.CreateUsersTitle_name}" />
                    <h:outputLabel value="#{bundle.CreateUsersLabel_surname}" for="surname" />
                    <h:inputText id="surname" value="#{usersController.selected.surname}" title="#{bundle.CreateUsersTitle_surname}" />
 <h:outputLabel value="#{bundle.CreateUsersLabel_username}" for="username" />
                    <h:inputText id="username" value="#{usersController.selected.username}" title="#{bundle.CreateUsersTitle_username}" required="true" requiredMessage="#{bundle.CreateUsersRequiredMessage_username}"/>

Есть идеи, пожалуйста?

1 Ответ

2 голосов
/ 24 июня 2011

Вот небольшая демонстрация, которую я сделал, надеюсь, это то, что вы ищете

name:    <input id="name" /> <br>
surname: <input id="surname" /><br>
username: <input onfocus="input()" id="username" />

это входные данные, а вот функция, которая вызывается onfocus в поле имени пользователя

function input(){
var name = document.getElementById('name').value;
var surname = document.getElementById('surname').value;
var username = '';

//only fill in the field if name and surname are entered 
if(name != '' && surname != ''){
    username = name+'.'+surname;
    document.getElementById('username').value = username;
}
}
...