Как ajax отправить изображение на веб-метод С# с помощью jquery
Возможный дубликат:
Как я могу загружать файлы асинхронно с помощью JQuery?
У меня есть поле для загрузки файла, после того, как было выбрано изображение, я делаю сообщение jquery ajax на странице страницы страницы aspx. Мой вопрос: как я могу передать это изображение через jquery? Когда я делаю $(this).val()
, он получает только имя файла. Я хочу передать сам объект изображения.
Ответы
Ответ 1
Вы не можете загрузить файл с помощью AJAX.
Вместо этого вы можете сделать <iframe>
с помощью простого тега <form>
, который не имеет ничего, кроме загрузки файла, и отправляет на страницу, которая отображает тег <script>
, который обращается к родительской странице с ответом сервера.
Затем вы можете отправить форму в <iframe>
с помощью Javascript с родительской страницы.
Ответ 2
Вы не можете сделать это через AJAX, потому что загрузка файлов не поддерживается основным механизмом XMLHttpRequest. Что вам нужно сделать (либо самостоятельно, либо с помощью одного из различных плагинов, которые помогают), отправить форму как обычную старую форму и либо нацелить ее на скрытый (или видимый) <iframe>
, либо просто перезагрузить всю страницу.