12行代码实现Javascript双向数据绑定两个input框

首先是案例展示:

file

实现过程,详细内容在代码中注释了.

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
    <title>Document</title>
  </head>
  <body>
    <input id="a" type="text" />
    <input id="b" type="text" />
    <script>
      // 获取两个input元素
      var a = document.querySelector("#a");
      var b = document.querySelector("#b");
      var obj = {};
      //input框输入过程中修改obj的name属性值,修改成鼠标抬起时所修改的那个值
      document.onkeyup = function(e) {
        obj.name = e.target.value;
      };
      //利用对象的defineProperty属性中的set方法将修改了的name属性值绑定到两个input框属性上
      Object.defineProperty(obj, "name", {
        set: function(e) {
          b.value = e;
          a.value = e;
        }
      });
    </script>
  </body>
</html>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容