【问题标题】:Pass a Variable in Function in an addEventListener [duplicate]在 addEventListener 中传递函数中的变量 [重复]
【发布时间】:2018-12-14 17:39:03
【问题描述】:

如何在函数previewImages 上传递一个变量?

document.querySelector('#file-input0').addEventListener("change", previewImages,false);
document.querySelector('#file-input1').addEventListener("change", previewImages,false);

我希望这个脚本调用函数:

function previewImages(i){
        var preview = document.getElementById("preview"+i);
        if (this.files) {
          [].forEach.call(this.files, readAndPreview);
        }}

每次我尝试这个时,我都无法传递变量值。我想用纯 javascript 实现这个。

【问题讨论】:

  • 你的意思是把变量值传递给document.querySelector...吗?
  • 没有。我的意思是像在 document.querySelector... 中设置一个变量并将其传递给函数 previewImages()

标签: javascript addeventlistener


【解决方案1】:

您可以直接将函数声明为处理程序,并从其内部调用函数previewImages

document.querySelector('#file-input0').addEventListener("change", function() {
  previewImages(0);
}, false);

document.querySelector('#file-input1').addEventListener("change", function() {
  previewImages(1);
}, false);

【讨论】:

  • @ErlV 你能解释一下,为什么这不起作用?
  • 它工作。我尝试在警报中显示该值,它确实传递了该值。非常感谢。
猜你喜欢
  • 2019-06-28
  • 1970-01-01
  • 2013-05-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-04
  • 1970-01-01
  • 2011-05-17
  • 1970-01-01
相关资源
最近更新 更多