Post FormData funktioniert nicht im IE9

Den folgenden code nicht posten, die Daten der Datei auf dem server im IE9.

FormData ()- Objekt sieht das Problem aber nicht wissen wie Sie es beheben.

Ich verwendet form.serialize() aber das ist nicht die Datei hochladen.

Im zögerlichen Umsetzung eine JQuery-Datei-uploader, die nur für diese Funktion.
Gibt es eine einfache Möglichkeit, um eine Datei hochzuladen, ähnlich FormData() ?

    //HTML
    <form name='aform' action='upload.php'>
           <input type='file' name='afile'>
           <input type='text' name='qty' value='1'>
           <input type='hidden' name='product_id' value='7'>
           <a class='addToCartButton'>Add to cart</a>
    </form>



    //JS
    $(document).on('click', '.addToCartButton', function(event) 
    {

        var form_id = $(this).closest('form').attr('id');

        var formElement = document.getElementById(form_id);

        var odata = new FormData(formElement);        

        //var $form = $('#'+form_id);

        $.ajax({
            url: 'http://localhost/cart/add',
            data: odata, //$form.serialize(),
            type: 'POST',
            processData: false,  //tell jQuery not to process the data
            contentType: false   //tell jQuery not to set contentType            
        }).done(function(data) 
        {

            var returnObject = jQuery.parseJSON(data);

            switch(returnObject.status) {
                case 'success':
                    alert('Item added to cart');
                    break;              
                case 'error':
                    alert('An error occured');
                    break;
                case 'no_file':
                    alert('No file was detected');
                    break;                                      
            }                           

        });

        event.preventDefault();
    }); 
  • caniuse.com/#search=formdata
  • Ja, ich fand, dass der IE9 wurde nicht unterstützt, aber wie kann ich das hochladen von Dateien mit jQ/ajax ohne FormData ? Ich habe gesehen, fileupload-libs, aber ich will auch hinzufügen, andere form-Elemente nicht einfach nur Dateien. Die meisten libs sehe ich nur eine Datei hochladen. Ich möchte in der Lage sein zu posten Datei[en] und anderen Formular-Daten in einer einzigen Anfrage
InformationsquelleAutor user1827093 | 2015-05-26
Schreibe einen Kommentar