为什么这个 jQuery focusout 和 change 函数不起作用?

Why doesn't this jQuery focusout and change function work?

这一定很简单,但我看不出是什么阻止了 .focusout 和 .change 函数的组合。

我希望当焦点离开第一个输入时,第一个输入复制到第二个。控制台中没有错误。 Fiddle: https://jsfiddle.net/fh8t6mm0/

我想使用 focusout 的原因是 .change 和 .val 函数由于某种原因不能可靠地工作。

HTML:

<div id="focusoutdiv">

  <input class="fieldone" type="text">

  <input class="fieldtwo" type="text">

</div>

JS:

$('#focusoutdiv').focusout(function() {
  $('.fieldone').change(function() {
    $('.fieldtwo').val($(this).val());
  });
});

您还可以使用模糊事件将文本从一个文本框复制到另一个文本框。以下代码可能对您有所帮助

$('.fieldone').blur(function() {
    $('.fieldtwo').val($(this).val());
});

不要在 focusout 事件中使用 change 事件。因为,它们需要单独定义才能按预期工作。此外,在您的代码片段中,仅 change 事件就足以满足您的要求。请参考下面的例子。

$('.fieldone').change(function() {
  $('.fieldtwo').val($(this).val());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="focusoutdiv">
  <input class="fieldone" type="text">
  <input class="fieldtwo" type="text">
</div>