событие нажатия кнопки для запуска управления загрузкой файлов в asp.net - PullRequest
0 голосов
/ 12 января 2011

У меня есть элемент управления загрузкой файлов, и я сделал это невидимым.

Я хочу включить просмотр Button для этого элемента управления загрузкой файлов, когда я нажимаю другой Button.

Как я могу это сделать?

Ответы [ 3 ]

1 голос
/ 19 декабря 2013

Сначала создайте загрузчик файлов, например this

Чтобы загрузить файл, вам нужно сделать 2 вещи

1) Выберите файл. (нажмите кнопку обзора)

2) Отправьте его на сервер. (нажмите кнопку загрузки)

Итак, сначала давайте напишем java-скрипт для этого.

<script type="text/javascript" > 
function uploadImage() {
    $('#MainContent_UploadButton').click()
}
function selectFile() {
    $('#MainContent_FileUploadControl').click();
}
</script>

Теперь заставьте контроллер загрузки файлов загружать себя, как только файл будет выбран.

 <asp:FileUpload id="MainContent_FileUploadControl" runat="server" 
            onChange="uploadImage()" class="hidden"/>

Затем создайте новую кнопку и дайте ей выбрать файл, как только он будет нажат.

    <asp:Button ID="MainContent_UploadButton" runat="server" Text="Upload File" 
            OnClientClick="selectFile(); return false;" />

Самым важным моментом является "return false" в поле onClientClick. Он заблокирует кнопки пост назад и позволит вам выбрать файл без обновления страницы.

Теперь спрячьте ненужные компоненты, используя css, и все готово!

0 голосов
/ 31 октября 2015
<asp:FileUpload ID="FileUpload1" runat="server" style="display:none;"/>
<input id="btnFileUpload" type="button" value="Add" runat="server" />

btnFileUpload.Attributes.Add("onclick", "document.getElementById('" + FileUpload1.ClientID + "').click();");
0 голосов
/ 12 января 2011

Я думаю, что это невозможно.Это может быть проблемой безопасности, если скрипт может загружать (или, по крайней мере, запускать процесс загрузки) невидимыми при любом взаимодействии с пользователем.


Обновление:

Похоже, кто-то на самом деле разработал решение, скрывающее элемент управления загрузкой .Из того, что я прочитал, кажется, что нужно приложить некоторые усилия для разработки и использования JavaScript.

Лично я не осмелюсь гарантировать, что это работает на всех платформах (только представьте, что кто-то с BlackBerry или Windows Phone заходит на ваш сайт ...) и таким образом избегает этого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...