2013-02-26 3 views
2

Я работаю над веб-приложением на основе Java (webwork framework), где сначала нужно сжать файл, который нужно загрузить. Поскольку нет способа установить значение элемента input type = 'file' "через javascript, я решил перейти по пути внедренного апплета. В основном этот апплет сжимает выбранный файл, затем загружает сжатый файл на сервер с помощью scp.Пользовательский сборщик файлов без использования <input type = "file" />

Это сработало хорошо, но у меня есть проблемы с предоставлением самой веб-страницы. Я думаю вместо того, чтобы реализовать сборщик файлов в апплете, если есть существующий сборщик файлов, который я могу использовать вместо этого. Конечно, не помещая никакого «input type = 'file».

Ссылки на эти существующие пользовательские сборщики веб-файлов будут очень оценены.

ответ

2

Из-за ограничений безопасности единственный способ выбрать файл с HTML - добавить <input type=file> в документ. Затем пользователь должен выбрать файл с реальными кликами.

Обратите внимание, что javascript способен (в современных браузерах) читать содержимое файла, поэтому он не должен выбирать произвольный файл и читать его.

+0

Да, именно поэтому я взял маршрут апплета и используется JFileChooser. Тем не менее, рендеринг является настолько медленным. – user2110793

1

Это всегда работает.

<div id="input_container" style="width: 0px; height: 0px; overflow: hidden"><input type="file" id="inputfile" /></div> 
<div class="button" onclick="upload();">Upload file</div> 

И сценарий

function upload(){ 
document.getElementById('inputfile').click(); 
} 

Ваш CSS

.button { 
    /*button style here*/ 
} 
Смежные вопросы