jQuery onchange事件不会同步更改值

时间:2015-09-13 05:27:39

标签: jquery onchange

我尝试使用jQuery同步将1输入字段的值提交到同一表单中的其他输入字段。我实现的是当用户从第一个字段更改焦点时,在第二个字段中更改了值,我想要实现的是在用户在第一个字段中更改它时更改第二个字段的值。 这是我的HTML

<div class="form-group">
<label class="form-label">Rate</label>
<div class="form-field">
<input type="text" name="rate_value" id="rate_value">
</div>
</div>

<div class="form-group">
<label class="form-label">Amount</label>
<div class="form-field">
<input type="text" name="amount" id="amount" disabled>
</div>
</div>

这是我的jQuery代码

var rate_value;
var amount;
$("#rate_value").on('change', function(){
    amount = $("#rate_value").val();
    $("#amount").val(amount);
});

1 个答案:

答案 0 :(得分:1)

如果要在按下每个键后更新已禁用的输入,请使用 keyup 事件

var rate_value;
var amount;
$("#rate_value").on('keyup', function() {
  amount = $("#rate_value").val();
  $("#amount").val(amount);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="form-group">
  <label class="form-label">Rate</label>
  <div class="form-field">
    <input type="text" name="rate_value" id="rate_value">
  </div>
</div>

<div class="form-group">
  <label class="form-label">Amount</label>
  <div class="form-field">
    <input type="text" name="amount" id="amount" disabled>
  </div>
</div>

更新:您可以使用在<{1}}或input元素的值更改时触发的 input 事件。它比textarea事件更好,它只在释放按下的键后触发。 keyup事件将在值更改时触发。

input
var rate_value;
var amount;
$("#rate_value").on('input', function() {
  amount = $("#rate_value").val();
  $("#amount").val(amount);
})