В любом случае, чтобы динамически установить текст в asp: FileUpload? - PullRequest
1 голос
/ 23 декабря 2009

Когда пользователь выбирает элемент из выпадающего списка, содержащего имена изображений, я хотел бы, чтобы текстовое поле FileUpload было заполнено сообщением, которое я программирую, таким как «Заменить это изображение ...». Как бы я это сделал?

Ответы [ 4 ]

2 голосов
/ 23 декабря 2009

Ограничения безопасности в некоторых браузерах (по крайней мере, в IE) не позволяют вам на самом деле установить текст элемента <input type="file" />, что и отображает элемент управления FileUpload ASP.NET.

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

1 голос
/ 23 декабря 2009

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

Однако вы можете использовать элемент управления загрузкой на основе Flash или Silverlight. Или поместите желаемое сообщение в метку над файлом ввода.

0 голосов
/ 27 июня 2017

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

<span runat="server" id="SelectedFileSpan" style="position: absolute; top: 10px; left: 12px">
    <asp:Label runat="server" ID="FileNameLabel"></asp:Label>
</span>
<asp:FileUpload runat="server" ID="FileUploader" />

Затем установите текст метки.

0 голосов
/ 23 декабря 2009

Не возможно. является частью браузера Chrome. Некоторые браузеры вообще не отображают текст, поэтому любое решение не будет надежным. Как предлагает Брайан, используйте

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