Fine Uploader Microsoft Edge File Upload Dialog Infinite Loop
<p>I'm using Fine Uploader on a site, and the uploading portion of it works perfectly fine on Edge. The issue I've discovered is when I first click the upload button, but instead of selecting a file I close the window or hit cancel, the dialog immediately reopens. It will continue doing this until I select a file for upload.</p>

<p>It seems related to my specific Fine Uploader settings, since the demos on the site don't have the same issue.</p>

<p>Not really sure what could be wrong, the problem is occurring before any upload even takes place.</p>

<p>The HTML for the button:</p>

<pre><code>&lt;label id="filelabel"&gt;
  &lt;div id="file"&gt;CLICK HERE TO UPLOAD PHOTO&lt;/div&gt;
&lt;/label&gt;
</code></pre>

<p>This is the JavaScript I have to get it going:</p>

<pre><code>var uploader = new qq.FineUploaderBasic({
  //template: 'qq-template',
  button: document.getElementById('file'),
  request: {
    endpoint: '/inc/endpoint.php',
    inputName: 'qqfile'
  },
  validation: {
    acceptFiles: ['image/jpeg', 'image/jpg', 'image/png', 'application/pdf'],
    allowedExtensions: ['jpeg', 'jpg', 'pdf', 'png'],
    itemLimit: 1,
    sizeLimit: 15000000
  },
  multiple: false,
  autoUpload: true,
  callbacks: {
    onSubmit: function(id, fileName) {
      console.log('submit detected');
      return true;
    },
    onUpload: function(id, fileName) {
      console.log('upload detected');
      return true;
    },
    onProgress: function (id, name, uploadedBytes, totalBytes) {
      var percent = Math.ceil(uploadedBytes / totalBytes * 100);
      $('#fileprogressbar').css('width', percent+'%');
      $('#filepercentage').html(percent+'%');
      if (name.search('pdf') !== -1) {
        $('#filefeedback').css('color','#ff9933');
       $('#filefeedback').html('PDFs require extra processing');
      }
    },
    onComplete: function(id, name, responseJSON, xhr) {
      if (responseJSON.success) {
        $('#filefeedback').css('color','#093');
        $('#filefeedback').html('File uploaded successfully');
        $('#e_filename').val(responseJSON.uploadName);
      } else {
        $('#e_filename').val('');
        $('#filefeedback').html(responseJSON.error);
      }
    },
    onError: function(id, name, errorReason, xhr) {
      console.log('error detected: '+errorReason);
      $('#filefeedback').css('color','#f00');
      $('#filefeedback').html(errorReason);
      $('#e_filename').val('');
      $('#fileprogressbar').css('width', '0%');
      $('#filepercentage').html('0%');
    },
    onCancel: function(id, name) {
      console.log('cancel detected');
      return false;
    },
    onAutoRetry: function(id, name, attemptNumber) {
      console.log('auto retry detected');
      return false;
    }
  },
  debug: false
</code></pre>

<p>});</p>