Google Chrome console 从剪切板中粘贴数据自动填写表单

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>

<head>
  <title>Untitled</title>
  <script>
    var EventUtil = {
      addHandler: function (element, type, handler) {
        if (element.addEventListener) {
          element.addEventListener(type, handler, false);
        } else if (element.attachEvent) {
          element.attachEvent("on" + type, handler);
        } else {
          element["on" + type] = handler;
        }
      },

      getEvent: function (event) {
        return event ? event : window.event;
      },

      getClipboardText: function (event) {
        var clipboardData = (event.clipboardData || window.clipboardData);
        return clipboardData.getData("text");
      },

      setClipboardText: function (event, value) {
        if (event.clipboardData) {
          return event.clipboardData.setData("text/plain", value);
        } else if (window.clipboardData) {
          return window.clipboardData.setData("text", value);
        }
      },

      preventDefault: function (event) {
        if (event.preventDefault) {
          event.preventDefault();
        } else {
          event.returnValue = false;
        }
      }
    };
  </script>
</head>

<body>
  <form name="f1">
    <select id="a">
      <option value="1">A1</option>
      <option value="2">A2</option>
      <option value="3">A3</option>
    </select>
    <select id="b">
      <option value="1">B1</option>
      <option value="2">B2</option>
      <option value="3">B3</option>
      <option value="4">B4</option>
    </select>
    <input type="text" name="textbox1" id="textbox1" value="" />
  </form>
</body>
<script>
  function clear(f) {
    if (f.value) {
      try {
        f.value = ''; //for IE11, latest Chrome/Firefox/Opera...
      } catch (err) {
      }
      if (f.value) { //for IE5 ~ IE10
        var form = document.createElement('form'), ref = f.nextSibling;
        form.appendChild(f);
        form.reset();
        ref.parentNode.insertBefore(f, ref);
      }
    }
  }

  var textbox = document.forms[0].elements["textbox1"];
  var mya = document.getElementById("a");
  var myb = document.getElementById("b");

  textbox.addEventListener("paste", function (e) {
    var copy = e.clipboardData.getData("Text");
    console.log(copy);
    // 拆分数据
    var arr = copy.split("\t");
    console.log(arr.length);
    if (arr.length != 3) {
      console.log("Data Error!");
      return;
    }

    id = arr[0].trim();
    a = arr[1].trim();
    b = arr[2].trim();

    if (a == 'A1') {
      mya.options[1].selected = true;
    };
    if (a == 'A2') {
      mya.options[0].selected = true;
    };
    if (a == 'A3') {
      mya.options[2].selected = true;
    };

    if (b == 'B2') {
      myb.options[2].selected = true;
    }
    setTimeout("clear(textbox)", 0);
    setTimeout("textbox.value=id", 0);

  });
</script>

</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值