Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   передать содержимое <input type="file" ... > в jquery (https://javascript.ru/forum/jquery/39225-peredat-soderzhimoe-input-type%3D-file-v-jquery.html)

derbass 21.06.2013 13:39

передать содержимое <input type="file" ... > в jquery
 
Доброго времени суток дорогим форумчанам! Вопрос заключается вот в чем. Есть форма, отправка производится с помощью
<a href="javascript:void(0);" onclick="order('manager');return false;">Отправить</a>
. (Т.е. мы нажали, начинается обработка содержимого формы, да и страницы в целом с помощью скрипта, после чего данные передаются в файл-обработчик? send.php к примеру). Как такового события SEND не происходит, данные передаются чеерз скрипт как POST. Строчные и прочие данные передаются отлично! в файле-обработчике легко и просто производить с ними манипуляции, используя POST. Только вот данные
<input type="file" ... >
не передаются, не знаю как вытащить их в jQuery. Спасибо за помощь, простите за сумбур!
P.S. $.post использую вместо submit.

mta88 21.06.2013 13:59

а в элементе <form> стоит enctype="multipart/form-data"?
оно обязательно для отправки файлов
-------------------
P.S. или вы вообще не используете submit() для формы, а используете $.post ?

mta88 21.06.2013 14:51

че-то я туплю, конечно же $.post

в новых браузерах (c новым XMLHttpRequest, их примерно 70%) есть объекты FormData
fd = new FormData()
fd.append('file1', file_input.files[0])
$.ajax({..., data: fd, ...})  --  по другому не нашел как

в старых браузерах без каких-то бредовых хаков не получится (лучше через плагины, не знаю какие)

nyols 21.06.2013 14:59

Отправляйте форму в скрытый Iframe и не парьте себе мозг.

derbass 21.06.2013 15:02

enctype="multipart/form-data" - стоит.

derbass 21.06.2013 15:03

Мне нужно из формы перетащить путь и занвание файла, в Вашем же примере он задан статически, вопрос как раз был в том- как его вытянуть..

derbass 21.06.2013 15:04

Iframe - есть ли похожие примеры? Спасибо!

mta88 21.06.2013 15:36

Цитата:

Сообщение от derbass (Сообщение 257618)
Мне нужно из формы перетащить путь и занвание файла

браузеры не дают стандартно путь файла

что касается названия файла
input_file_element.files // массив файлов элемента формы
input_file_element.files[0].name // имя первого файла

не думал что именно в этом была проблема

derbass 21.06.2013 15:54

Хорошо, все же задам очередной глупый вопрос: каким бразом тогда организовать отправку письма с attachment файлом? или подгрузить ег она сервер? Где-то ведь путь должен браться?
P.S. Прошу простить за глупые вопросы, конечно. Но сам, чисто для себя, сел написал форму с отправкой файла. Пути и имя подтягиваются все же. Но как это все дело засунуть в javascript?

walik 21.06.2013 16:47

Асинхронная загрузка изображений на сервер с помощью скрытого IFRAME

Асинхронная загрузка файлов скрытым iframe

Асинхронная загрузка файлов в скрытом iframe


Часовой пояс GMT +3, время: 23:14.