如何使用javascript在输入id 2中获取事件onkeyup?

时间:2017-12-02 15:48:25

标签: javascript jquery html

如何使用javascript在输入id="two"中获取事件onkeyup?

我无权修改功能test_1_fn()并输入id="one"

那么,如何在输入id="two"或函数test_2_fn()中编辑以从id="two"输入alert作为onkeyup?

备注:用户只能将文字填入输入id="one"

<input id="one" onkeyup="test_1_fn()"><br>
<script>
    function test_1_fn() {
        var one_val = document.getElementById("one").value;
        document.getElementById("two").value = one_val;
    }
</script>
<input id="two" onkeyup="test_2_fn()"><br>
<script>
    function test_2_fn() {
        var two_val = document.getElementById("two").value;
        alert(two_val);
    }
</script>

1 个答案:

答案 0 :(得分:0)

最好的方法可能是MutationObserver,因为通过javascript更改元素属性不会触发元素上的任何事件。然而,这非常复杂,noobish方法将是:

var before, el = document.getElementById("two");
setInterval(function(){
  if(before && el.value != before){
    alert(el.value);
  }
  before = el.value;
}, 50);

但是我仍然不明白你为什么不这样做:

document.getElementById("one").addEventListener("keyup", function(){
 alert(this.value);
});