ASP.NET - перезагрузить выпадающий список? - PullRequest
0 голосов
/ 17 сентября 2010

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

Я попытался поместить раскрывающийся список в панель обновления и присвоить ему идентификатор кнопки создания файла, не удалось ... Это правильное применение или есть более простой способ?

Спасибо!


Я просто не могу заставить его работать, это мой код:

<asp:UpdatePanel ID="UP_ExportInvoices" runat="server" UpdateMode="Always">
     <ContentTemplate>
         <asp:DropDownList ID="DDL_ExportFileDownLoad" runat="server" AutoPostBack="true"
                        OnSelectedIndexChanged="DDL_ExportFileDownLoad_SelectedIndexChanged">
         </asp:DropDownList>
     </ContentTemplate>
</asp:UpdatePanel>

Я думал, что если для UpdateMode установлено значение Always , то содержимоевсегда обновляется?У меня также есть та кнопка (asp: ImageButton), которая находится вне этой UpdatePanel.Я попытался добавить триггер для этой кнопки, но это не сработало.Что я делаю не так?Пока что я только делаю исключения, или выпадающий список не обновляется.

Спасибо:)

Ответы [ 4 ]

0 голосов
/ 17 сентября 2010

Вам необходимо разместить кнопку внутри панели обновления.Это приведет к частичной обратной передаче, и выпадающий список должен повторно привязаться, показывая новый элемент.В качестве альтернативы вы можете включить JavaScript на своей странице, который добавляет новый элемент в раскрывающийся список на стороне клиента, однако иногда это может вызвать проблемы с автоматической проверкой событий ASP.

0 голосов
/ 17 сентября 2010

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

Если кнопка делает частичный постбэк (скажем, он помещен в UpdatePanel) на сервер, то вышеприведенное будет по-прежнему применимо, но раскрывающийся список также должен быть в UpdatePanel.

0 голосов
/ 17 сентября 2010

Необходимо убедиться, что кнопка является триггером для панели обновления или является дочерним элементом внутри нее.

Вот полное объяснение:

http://www.asp.net/ajax/tutorials/understanding-asp-net-ajax-updatepanel-triggers

0 голосов
/ 17 сентября 2010

Если вы создаете файл на той же странице, просто добавьте имя файла в выпадающий список.Можете ли вы сделать этот трюк в вашем приложении?

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