I am uploading image through ajax and during the ajax call, I want to set tmp name of uploaded file, but it returns undefined.
This is my code:
function imageIsLoaded(e) {
  $("#file").css("color", "red");
  $('#image_preview').css("display", "block");
  $('#previewing').attr('src', e.target.result);
  //$('#previewing').attr('src', imagetempname);
  $('#previewing').attr('width', '150px');
  $('#previewing').attr('height', '150px');
  //alert(e.target.result);
};
$("#file").change(function() {
  $("#message").empty(); // To remove the previous error message
  var file = this.files[0];
  var imagefile = file.type;
  var imagename = file.name;
  var imagetempname = file.tmp_name;
  var match = ["image/jpeg", "image/png", "image/jpg"];
  if (!((imagefile == match[0]) || (imagefile == match[1]) || (imagefile == match[2]))) {
    $('#previewing').attr('src', 'noimage.png');
    $("#message").html("<p id='error'>Please Select A valid Image File</p>" + "<h4>Note</h4>" + "<span id='error_message'>Only jpeg, jpg and png Images type allowed</span>");
    return false;
  } else {
    var reader = new FileReader();
    reader.onload = imageIsLoaded;
    reader.readAsDataURL(this.files[0]);
    document.getElementById("imagename").value = imagename;
    alert(imagetempname);
    document.getElementById("imagetmpname").value = imagetempname;
  }
});
Here when I alert(imagetempname);, it will return undefined.
 
     
    