2011-01-17 2 views
2

У меня есть веб-страница в asp.net 3.5, которая использует элемент управления FileUpload. Когда пользователь нажимает кнопку «Обзор» (которая является частью элемента управления), элемент управления отображает всплывающее окно выбора файла (диалоговое окно). Когда пользователь выбирает файл, который они хотят загрузить, по умолчанию полный путь к файлу отображается в текстовом поле (которое также является частью элемента управления); Однако, я хочу, чтобы он отображал только имя файла, а не полный путь. Кто-нибудь знает, сколький и простой способ сделать это?Отображать только имя файла в элементе управления FileUpload

ответ

3

Я уверен, что это невозможно. Вы не можете установить значение внутри текстового поля элемента управления FileUpload в любое время, используя скрипт на стороне сервера или на стороне клиента.

+0

+1. для того, чтобы быть первым с правильным ответом. – David

2

контролировать FileUpload является по существу HTML <input type="file">

Таким образом, браузер определяет, как сделать это. У вас нет контроля над этим.

1

Как уже было сказано, управление входным файлом на основе файлов не будет делать этого. Однако вы можете обойти это с помощью некоторого наложенного стиля управления. Начало here. Вероятно, потребуется немного JavaScript, чтобы разбить имя файла из пути, отображать только последние (в пользовательских элементах, не относящихся к управлению), но использовать их, когда это имеет значение (в самом управлении). Но это должно быть выполнимо.

+0

Вы не можете изменить его и с помощью JavaScript. Он не будет работать так, как ожидалось, и вызовет исключения безопасности. – Scott

+0

@Scott Schluer: Идея здесь заключается не в изменении значения элемента управления, а в том, чтобы скрыть элемент управления из представления и представить пользователю некоторые пользовательские элементы, которые действуют как элемент управления , передавать ему события, но отображать только то, что разработчик хочет отобразить. – David

+0

Спасибо за ссылку. Я не понимал, что у jQuery есть собственный контроль для этого. Элемент управления, показанный на странице ссылки, выполняет именно то, что мне нужно. Я более подробно рассмотрю его и посмотрю, подходит ли это решение, которое я ищу. – Jagd

Смежные вопросы