使用Javascript将多个输入字段合并到一个输入字段中?

时间:2017-08-06 12:47:52

标签: javascript jquery

我在下面有这个代码,它将多个字段组合到一个字段中,但是当您单击按钮时它只会将它们组合在一起。有没有办法编辑它,以便它不需要单击按钮来组合字段,只是将它们组合为用户类型?

 <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>    

    First Name: <input class="combine" id="input1"  value=""/>
    Last Name: <input class="combine" id="input2" value=""/>
    <button id="setVal">Combine</button>
First and Last Name Combined <input class="combine" id="Voltes5" size="105" value='' />

    <script type="text/javascript">
    $('#setVal').click(function(){
    $('#Voltes5').val(
      $('.combine')
      .not('#Voltes5')
      .map(
        function(){
          return $(this).val();
        })
      .get()
      .join('')
    );
    });
      </script>

2 个答案:

答案 0 :(得分:2)

使用input事件。

$(function() {
  $('#input1, #input2').on('input', function() {
    $('#Voltes5').val(
      $('#input1, #input2').map(function() {
        return $(this).val();
      }).get().join(' ') /* added space */
    );
  });
});
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

First Name: <input class="combine" id="input1" value="" /> Last Name: <input class="combine" id="input2" value="" />First and Last Name Combined <input class="combine" id="Voltes5" size="105" value='' />

答案 1 :(得分:0)

$(document).ready(function(){
$("#setVal").click(function(){
$("#Voltes5").val($("#input1").val() + " " + $("#input2").val());
});
	});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    First Name: <input class="combine" id="input1"  value=""/>
    Last Name: <input class="combine" id="input2" value=""/>
    <button id="setVal">Combine</button>
First and Last Name Combined <input class="combine" id="Voltes5" size="105" value='' />