gpt4 book ai didi

javascript - 通过javascript将onkeyup和blur应用到文本框

转载 作者:行者123 更新时间:2023-12-02 14:30:01 25 4
gpt4 key购买 nike

我有 10 个文本框,但我想在 5 个元素上应用 onkey 和模糊事件。

for(var x=3;x<7;x++){
document.getElementById("txt_"+x).onclick=function(){
put_contents(document.getElementById("txt_"+x));
};
document.getElementById("txt_"+x).onkeyup = function(){
validateHexa(document.getElementById("txt_"+x));
};
document.getElementById("txt_"+x).onblur = function(){
restore_it(document.getElementById("txt_"+x));
};
}

执行此操作后,当我单击文本框时,put_contents 并不总是将“txt_7”作为参数。请建议正确的方法。仅 JavaScript

最佳答案

您可以通过在循环内创建一个(另一个)闭包来“分离”x 的值:

for (var x = 3; x < 7; x++) {
(function(x) {
document.getElementById("txt_" + x).onclick = function() {
put_contents(document.getElementById("txt_" + x));
};
document.getElementById("txt_" + x).onkeyup = function() {
validateHexa(document.getElementById("txt_" + x));
};
document.getElementById("txt_" + x).onblur = function() {
restore_it(document.getElementById("txt_" + x));
};
})(x);
}

有关详细信息,请参阅 How do JavaScript closures work?

关于javascript - 通过javascript将onkeyup和blur应用到文本框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37921036/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com