Uncaught TypeError: Cannot read property 'addEventListener' null Fehler für Bild-upload

Hallo Freunde ich bin immer diese Fehler im folgenden code:

Uncaught TypeError: Cannot read property 'addEventListener' of null auf der Linie 11

Der Zeile 11:

fileDiv.addEventListener("click",function(e){
  $(fileInput).show().focus().click().hide();
  e.preventDefault();
},false)

Dies ist die input-Datei:

<input type="file" class="imageUploadBtn" id="upload-image" name="fotograflar[]" multiple="multiple">

In diesem code ein Fehler in Zeile 5:

console.log(fileInput);
fileInput.addEventListener("change",function(e){
  var files = this.files
  showThumbnail(files)
},false)

Was ist der Fehler? Wer kann mir diesbezüglich helfen ? Ich bin mit diesem code für Bild hochladen, aber dieser Fehler wird mir nicht erlauben!!

$(document).ready(function() 
    {
    jQuery(function($){
    var fileDiv = document.getElementById("upload");
    var fileInput = document.getElementById("upload-image");
    console.log(fileInput);
    fileInput.addEventListener("change",function(e){
      var files = this.files
      showThumbnail(files)
    },false)

    fileDiv.addEventListener("click",function(e){
      $(fileInput).show().focus().click().hide();
      e.preventDefault();
    },false)

    fileDiv.addEventListener("dragenter",function(e){
      e.stopPropagation();
      e.preventDefault();
    },false);

    fileDiv.addEventListener("dragover",function(e){
      e.stopPropagation();
      e.preventDefault();
    },false);

    fileDiv.addEventListener("drop",function(e){
      e.stopPropagation();
      e.preventDefault();

      var dt = e.dataTransfer;
      var files = dt.files;

      showThumbnail(files)
    },false);

    function showThumbnail(files){
      for(var i=0;i<files.length;i++){
        var file = files[i]
        var imageType = /image.*/
        if(!file.type.match(imageType)){
          console.log("Not an Image");
          continue;
        }

        var image = document.createElement("img");
        //image.classList.add("")
        var thumbnail = document.getElementById("thumbnail");
        image.file = file;
        thumbnail.appendChild(image)

        var reader = new FileReader()
        reader.onload = (function(aImg){
          return function(e){
            aImg.src = e.target.result;
          };
        }(image))
        var ret = reader.readAsDataURL(file);
        var canvas = document.createElement("canvas");
        ctx = canvas.getContext("2d");
        image.onload= function(){
          ctx.drawImage(image,100,100)
        }
      }
    }
              });
               });
Sie haben element auf der Seite mit der id hochladen ?
Es bedeutet fileInput ist null. Warum sind Sie mit .addEventListener() bei der Verwendung von jQuery? Mit jQuery, können Sie ein Liste Ereignis-Namen und ordnen Sie diesem handler mit nur einem Funktionsaufruf.
die id ist bei mir die Frage: id="upload-image"
vielleicht gibt es kein element, das haben id=upload tag.
Aber die Funktion, die Ordnung, die in localhost

InformationsquelleAutor innovation | 2014-12-30

Schreibe einen Kommentar