Сохранить имя файла в элементе управления FileUpload после postBack - PullRequest
0 голосов
/ 12 октября 2011

У меня проблема с управлением FileUpload.У меня есть один, два выпадающих списка, текстовое поле и кнопка.Если я выберу в первом dropDownList «Да», второй станет отключенным и установлю значение на NO (во втором ddl у меня есть два варианта YES или NO и в первом тоже), однако, если я выберу NO в первом dropDownList, я могу выбрать оба вариантаво втором dropDownList.Первое изменение ddl второго на postBack с использованием selectedIndexChanged evet, и когда это происходит, я теряю имя файла в элементе управления UploadFile, который я установил ранее.

Пример кода:

<asp:FileUpload ID="fuUploadGeometry" runat="server" Width="100%" />
<asp:DropDownListID="ddlSymmetry"runat="server" AutoPostBack="true"
      onselectedindexchanged="ddlSymmetry_SelectedIndexChanged">
                    <asp:ListItem Value="0">-- Select --</asp:ListItem>
                    <asp:ListItem Value="true">Yes</asp:ListItem>
                    <asp:ListItem Value="false">No</asp:ListItem>
</asp:DropDownList>
<asp:DropDownList ID="ddlModule" runat="server" Enabled="True">
                    <asp:ListItem Text="-- Select --" Value="0"/>
                    <asp:ListItem Text="Yes" Value="1"  />
                    <asp:ListItem Text="No" Value="2"/>
                </asp:DropDownList>
<asp:TextBox ID="txtTopic" runat="server"></asp:TextBox>

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

Ответы [ 2 ]

0 голосов
/ 16 августа 2016

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

0 голосов
/ 30 марта 2013

Попробуйте, я добавил метку, чтобы вы могли видеть, что обратная передача onselectedindexchange влияет только на выпадающий список, а не на элемент управления загрузкой файлов, надеюсь, это поможет. </p> <pre><code> <asp:FileUpload ID="fuUploadGeometry" runat="server" Width="100%" /> <asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate> <asp:DropDownList ID="ddlSymmetry" runat="server" AutoPostBack="true" OnSelectedIndexChanged="ddlSymmetry_SelectedIndexChanged"> <asp:ListItem Value="0">-- Select --</asp:ListItem> <asp:ListItem Value="true">Yes</asp:ListItem> <asp:ListItem Value="false">No</asp:ListItem> </asp:DropDownList> <asp:DropDownList ID="ddlModule" runat="server" Enabled="True"> <asp:ListItem Text="-- Select --" Value="0" /> <asp:ListItem Text="Yes" Value="1" /> <asp:ListItem Text="No" Value="2" /> </asp:DropDownList> <asp:TextBox ID="txtTopic" runat="server"></asp:TextBox> <asp:Label runat="server" ID="msgFromList" /> </ContentTemplate> </asp:UpdatePanel>

защищенный void ddlSymmetry_SelectedIndexChanged (отправитель объекта, EventArgs e) { msgFromList.Text = ddlSymmetry.SelectedItem.Value.ToString (); }

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