Как автоматически скопировать и объединить значения нескольких полей ввода в одно поле?

#javascript #jquery #html

#javascript #jquery #HTML

Вопрос:

Я хочу автоматически копировать и объединять значения lname , fname amp; mname в fullname , когда я нажимаю на fullname поле.

Вот HTML:

 <input type="text" class="form-control" id="lname">
<input type="text" class="form-control" id="fname">
<input type="text" class="form-control" id="mname">
<input type="text" class="form-control" id="fullname" onclick="namefunc()">
  

Javascript:

 <script type="text/javascript">
    $(document).ready(function () {
        function namefunc() {
            var n1 = $('#fname');
            var n2 = $('#mname');
            var n3 = $('#lname');
            var fn = $('#fullname');
            fn.val(n1.val()   " "   n2.val()   " "   n3.val());
        }
    });
</script>
  

Это не работает. Пожалуйста, помогите!

Комментарии:

1. Вашей функции не обязательно находиться в обработчике doc ready, она может находиться непосредственно внутри тегов скрипта. Ваш код должен работать иначе. Видите ли вы какие-либо ошибки, зарегистрированные в консоли?

2. @Nikolay Спасибо! Это сработало.

Ответ №1:

Как сказал @Nicolay в комментарии, моя функция не обязательно должна быть в обработчике doc ready, она может находиться непосредственно внутри тегов скрипта. Я попробовал это:

 <script type="text/javascript">
  function namefunc() {
    var n1 = $('#fname');
    var n2 = $('#mname');
    var n3 = $('#lname');
    var fn = $('#fullname');
    fn.val(n1.val()   " "   n2.val()   " "   n3.val());
  };
</script>
  

И это сработало! 🙂