javascript - 将值从一个表单字段复制到另一个表单字段(不带复选框)

标签 javascript html forms

我想在表单字段中输入一个数字,并让其旁边的字段自动更新为该数字的 2 倍。如果没有复选框之类的东西,我不知道如何做到这一点。

我有这个:

var val = document.form1.field1.value
  if (/^\s*$/.test(val)) {
  }
  else {
    document.form1.field2.value = val * 2
  }

我认为这样做是检查 field1 是否有任何值(否则我只想让字段显示占位符),如果它确实有值,则会使 field2 = field1 * 2

我的目标是当我在 field1 中输入数字时让 field2 更新。

感谢您的帮助!

最佳答案

添加一个 keyup 处理程序,并将该值解析为数字(它始终是一个字符串)并乘以 2:

<form id="form1">
    <input id="field1" onkeyup="fn(this)" />
    <input id="field2" />
</form>

<script type="text/javascript">
    function fn(elem) {
        var val = parseFloat(elem.value) * 2 || '';
        document.getElementById('field2').value = val;
    }
</script>

FIDDLE

关于javascript - 将值从一个表单字段复制到另一个表单字段(不带复选框),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17584311/

相关文章:

javascript - 发送表单 POST 时不带参数

c++ - 如何将 Windows 窗体应用程序 (C++) 设置为具有 Aero/Glass 背景?

javascript - 将一个对象的值匹配到另一个对象

javascript - Webpack:让它忽略找不到的源文件?

javascript - Jquery 切换事件类

javascript - Swiper slider 不会为 slider 布局加载多个 View

javascript - 在 JavaScript 中另一个(异步)函数完成后执行一个函数

php - 24 小时日期增量 (PHP/Laravel)

javascript - 如何在启用和禁用表单提交之间切换?

c# - 多形式项目的录入方法是什么?