jQuery在IE9中不工作。addEventListener问题

jQuery在IE9中不工作。addEventListener问题,jquery,Jquery,说到jQuery,我是一个有点新手,并且修改了我在网上找到的上传脚本。它在Chrome上实现了我所期望的一切。我在Internet Explorer中对其进行了测试,发现以下错误:- SCRIPT438:对象不支持属性或方法“addEventListener” upload.js,第21行,字符3 我做了一些研究,似乎addEventListener在IE中不受支持。有人能帮我调整代码使其工作吗。非常感谢 (function () { var input = document.getEl

说到jQuery,我是一个有点新手,并且修改了我在网上找到的上传脚本。它在Chrome上实现了我所期望的一切。我在Internet Explorer中对其进行了测试,发现以下错误:-

SCRIPT438:对象不支持属性或方法“addEventListener” upload.js,第21行,字符3

我做了一些研究,似乎addEventListener在IE中不受支持。有人能帮我调整代码使其工作吗。非常感谢

(function () {
    var input = document.getElementById("images"),
        oID = $('#oID').val(),
        formdata = false;

    function showUploadedItem(source) {
        var list = document.getElementById("image-list"),
            li = document.createElement("li"),
            img = document.createElement("img");
        img.src = source;
        li.appendChild(img);
        list.appendChild(li);
    }

    if (window.FormData) {
        formdata = new FormData();
        document.getElementById("btn").style.display = "none";
    }

    input.addEventListener("change", function (evt) {
        document.getElementById("response").innerHTML = "Uploading . . ."
        var i = 0,
            len = this.files.length,
            img, reader, file;

        for (; i < len; i++) {
            file = this.files[i];

            if ( !! file.type.match(/image.*/)) {
                if (window.FileReader) {
                    reader = new FileReader();
                    reader.onloadend = function (e) {
                        showUploadedItem(e.target.result, file.fileName);
                    };
                    reader.readAsDataURL(file);
                }
                if (formdata) {
                    formdata.append("images[]", file);
                }
            }
        }

        formdata.append("oID", oID);
        if (formdata) {
            $.ajax({
                url: "upload.php",
                type: "POST",
                data: formdata,
                processData: false,
                contentType: false,
                success: function (res) {
                    document.getElementById("response").innerHTML = res;
                }
            });
        }
    }, false);
}());
(函数(){
var input=document.getElementById(“图像”),
oID=$('#oID').val(),
formdata=false;
函数showUploadedItem(源代码){
var list=document.getElementById(“图像列表”),
li=document.createElement(“li”),
img=document.createElement(“img”);
img.src=源;
李.儿童(img);
表1.儿童(李);
}
if(window.FormData){
formdata=新的formdata();
document.getElementById(“btn”).style.display=“无”;
}
input.addEventListener(“更改”,函数(evt){
document.getElementById(“响应”).innerHTML=“上传…”
var i=0,
len=this.files.length,
img、阅读器、文件;
对于(;i
试试-

$(input).change(function (evt) {
    // your code
});

您正在使用jQuery,对吗?如果是这种情况,那么像这样更改代码-

  • 不要使用
    document.getElementById(id)
    来选择元素,而是尝试使用
    $(“#您的#id_字符串”)
    来选择它们
  • 而不是使用
    document.getElementById(id.style.display=“none”隐藏元素
    ,请尝试
    $(“#您的_id_字符串”).hide()
  • 不要使用
    document.getElementById(“response”).innerHTML=“text”
    ,而是尝试使用
    $(“#response”).html(“text”)
  • 你的代码会更干净

    另外,请注意代码中有错误。您的匿名函数声明不正确。试试这个-

    $(document).ready(function() {
        var input = document.getElementById("images"),
        oID = $('#oID').val(),
        formdata = false;
    
        // rest of your code.
    });
    
    试试-

    您正在使用jQuery,对吗?如果是这种情况,那么像这样更改代码-

  • 不要使用
    document.getElementById(id)
    来选择元素,而是尝试使用
    $(“#您的#id_字符串”)
    来选择它们
  • 而不是使用
    document.getElementById(id.style.display=“none”隐藏元素
    ,请尝试
    $(“#您的_id_字符串”).hide()
  • 不要使用
    document.getElementById(“response”).innerHTML=“text”
    ,而是尝试使用
    $(“#response”).html(“text”)
  • 你的代码会更干净

    另外,请注意代码中有错误。您的匿名函数声明不正确。试试这个-

    $(document).ready(function() {
        var input = document.getElementById("images"),
        oID = $('#oID').val(),
        formdata = false;
    
        // rest of your code.
    });
    

    谢谢你的帮助。是的,jQuery。前两个建议不起作用。我将尝试你进一步的3个建议。Thanks@GaryWaudby:只需将当前函数体放入
    文档中即可。就绪
    。我又编辑了一遍。请检查一下,太好了。谢谢我不能投票支持你,因为你没有足够的声誉+1@GaryWaudby:现在你可能有足够的声誉:-)。如果一个问题值得回答,那么它就值得a+1,所以我给了你一个。@Garywoodby,你能分享你的代码吗?最后,你得到了什么结果。我正试着了解这件事。谢谢你的帮助。是的,jQuery。前两个建议不起作用。我将尝试你进一步的3个建议。Thanks@GaryWaudby:只需将当前函数体放入
    文档中即可。就绪
    。我又编辑了一遍。请检查一下,太好了。谢谢我不能投票支持你,因为你没有足够的声誉+1@GaryWaudby:现在你可能有足够的声誉:-)。如果一个问题值得回答,那么它就值得a+1,所以我给了你一个。@Garywoodby,你能分享你的代码吗?最后,你得到了什么结果。我试着去了解这些事情。