Member 12610415 Ответов: 1

Formdata не работает в Google chrome


Hi,

I have a form with one upload control and some text fields.

i am sending the formdata values to the controller with ajax.

Here am facing one problem i.e am able to get the formdata values in IE and Mozilla but not in chrome. Please let me know the reason.

Here is my code snippet.

var fileUpload = $("#file").get(0);

 var files = fileUpload.files;

 var fileData = new FormData();

for (var i = 0; i < files.length; i++)
{

    fileData.append(files[i].name, files[i]);

}
 
 fileData.append("textfield1", $('#textfield1').val());

 fileData.append("textfield2", $('#textfield2').val());

 fileData.append("textfield3", $('#textfield3').val());

 fileData.append("textfield4", $('#textfield4').val());
 
xhr = $.ajax({

                url: 'Home/Index',

                type: 'POST',

                dataType: "JSON",

                contentType: false, // Not to set any content header 

                processData: false, // Not to process data 

                data: fileData
    })


Thanks in advance.


Что я уже пробовал:

Я пробовал с IE и Mozilla, он работает нормально.

Richard Deeming

Chrome поддерживает FormData начиная с версии 7. Если ваш код работает в IE и Firefox, он также должен работать в Chrome.

Вам нужно будет отладить свой код, чтобы увидеть, что происходит не так.

Вы также можете попробовать отключить все установленные вами расширения Chrome, если одно из них мешает работе скрипта.

1 Ответов

Рейтинг:
2

Sergey Alexandrovich Kryukov

Для начала ознакомьтесь с диаграммой совместимости: FormData-веб-API | MDN.

См. раздел "совместимость с браузером".

—СА