文件上传AJAX请求在IE10中不起作用

时间:2013-10-22 16:44:05

标签: javascript jquery ajax internet-explorer xmlhttprequest

我正在使用this回答来创建一个上传AJAX请求的文件。

<!DOCTYPE html>
<html>
    <head>  
        <script src="jquery-2.0.1.js"></script>
        <script>
            $(document).ready(function() {          

                $('#load').submit(false);

                /* Attach a submit handler to the form */
                $("#load").submit(function(event) {

                    /* Clear result div*/
                    $("#results").html('');

                    /* Get some values from elements on the page: */                    
                    var formData = new FormData($('#load')[0]);

                    $.ajax({
                        url: 'massUploadScript1.php',  //Server script to process data
                        type: 'POST',
                        xhr: function() {  // Custom XMLHttpRequest
                            var myXhr = $.ajaxSettings.xhr();
                            /*if(myXhr.upload){ // Check if upload property exists
                            myXhr.upload.addEventListener('progress',progressHandlingFunction, false); // For handling the progress of the upload
                            }*/
                            //Commented this out cuz I ain't got no hanlder function
                            return myXhr;
                        },
                        //Ajax events
                        success: function(input) {
                            $("#results").html(input);
                        },
                        error:function(jqXHR, textStatus, errorThrown) {
                            alert(jqXHR + textStatus + errorThrown);
                            $("#results").html('There is error while submit');
                        },
                        // Form data
                        data: formData,
                        //Options to tell jQuery not to process data or worry about content-type.
                        cache: false,
                        contentType: false,
                        processData: false
                    });

                    alert("fin submit event");
                    //return false;
                });

                alert("fin document ready");
            });
        </script>
    </head>

    <body>
        <form id="load" action="massUploadScript1.php" method="POST" enctype="multipart/form-data">
            <input type="file" name="file"><br>
            <input type="submit" value="Send">
        </form>
        <br>
        <div id="results"></div>
    </body>
</html>

它在Chrome中按预期工作,但在IE10中它拒绝工作。通过调试li'l,似乎代码正确地进入xhr函数,但似乎之后不发送请求。错误消息未显示

BTW我想要做的是发送一个Excel文件并使用Excel ExcelP库在PHP中处理它并吐出所需的行,但正如我所说,该部分已经在chrome中工作。

请尽可能请提供不使用插件的答案,因为我想知道问题所在。

非常感谢你们,我非常感谢这个网站上的窥视!

0 个答案:

没有答案