priya9826 Ответов: 2

Загрузка файла сбрасывается при нажатии кнопки


Я использую элемент управления fileupload в своем asp.net применение. Но этот элемент управления добавляет кнопку загрузки по умолчанию browse и текстовое поле, где путь отображается после выбора файла.Onclick кнопки browse я загружаю файл и нажимаю на кнопку submit.В первый раз,при нажатии кнопки Отправить, загруженный файл автоматически удаляется и не может отправить форму.При нажатии кнопки "Отправить" я могу отправить эту кнопку.

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

Что я уже пробовал:

функция DisplayFileDescription() {

var tb1 = document.getElementById("<%=txtCourseCode.ClientID %>"). значение;
var tb2 = document.getElementById("<%=txtExamNumber.ClientID %>"). значение;

если (tb1 == ") {
document. getElementById("<%=rfvCourseCode.ClientID%>"). style. visibility = " видимый";
document. getElementById("<%=rfvCourseCode.ClientID%>"). enabled = true;
// Понятно();
}
если (tb2 == ") {
document. getElementById("<%=rfvExamNumber.ClientID%>"). style. visibility = " видимый";
document. getElementById("<%=rfvExamNumber.ClientID%>"). enabled = true;
// Понятно();
}
если(ТВ1!=" усилитель&;&амп; ТВ2!=") {
document. getElementById("<%=rfvCourseCode.ClientID%>"). style. visibility = " скрыто";
document. getElementById("<%=rfvCourseCode.ClientID%>"). enabled = false;
document. getElementById("<%=rfvExamNumber.ClientID%>"). style. visibility = " скрыто";
document. getElementById("<%=rfvExamNumber.ClientID%>"). enabled = false;
}

//var strcollege = document. getElementById ("ctl00$ContentPlaceHolder1$ddlCollege"). options[e. selectedIndex]. text;
var College = document. getElementById ("ddlCollege");
var strcollege = College. options[College. selectedIndex]. text;

//UI Studnet
if (strcollege = = " Университет Айовы") {
var strFileDescription = document. getElementById('<%=txtCourseCode.ClientID %>'). значение;
// var strFileDescription = document. getElementById('<%=txtCourseCode.Идентификатора ClientID %&ГТ;').значение + "_" + документ.метода getElementById('&л;%=txtExamNumber.ClientID %>'). значение;

//strFileDescription = removeSpecial(strFileDescription);
strFileDescription = strFileDescription. split (':'). join("");
document.getElementById('<%=txtFileDescription.ClientID%>'). value = strFileDescription;

if (document. getElementById ("FileUploadAttachment"). value != ") {
var filename = document. getElementById ("FileUploadAttachment"). value;

document.getElementById ("lblFileChoosen"). innerHTML = filename. substring(filename. lastIndexOf ('\\') + 1);

}
}
//Для студентов ИП
ещё {
var strFileDescription = document.getElementById('<%=txtStudentFirstName.Идентификатора ClientID %&ГТ;').документ значения.метода getElementById('&л;%=txtStudentLastName.ClientID %>'). value +"_" +
document.getElementById('<%=txtCourseCode.Идентификатора ClientID %&ГТ;').значение + "_" + документ.метода getElementById('&л;%=txtExamNumber.ClientID %>'). значение;

strFileDescription = strFileDescription. split (':'). join("");
document.getElementById('<%=txtFileDescription.ClientID%>'). value = strFileDescription;

если (документ.метода getElementById("ContentPlaceHolder1_FileUploadAttachment").значение != ") {
var filename = document. getElementById ("ContentPlaceHolder1_FileUploadAttachment"). value;

document.getElementById ("lblFileChoosen"). innerHTML = filename. substring(filename. lastIndexOf ('\\') + 1);
}
}

}
<table runat="server" id="tblExamFileAttachments" frame="box" visible="false" width="800px"

                              cellpadding="0" cellspacing="0">
                              <tr>
                                  <td width="10px">
                                  </td>
                                  <td style="font-weight: bold" colspan="2">
                                      Upload Exam Attachment File
                                      <br />
                                      <br />
                                  </td>
                              </tr>
                              <tr>
                                  <td width="10px">
                                  </td>
                                  <td style="font-weight: bold">
                                      Please select File :
                                  </td>
                                  <td>
                                      <asp:FileUpload ID="FileUploadAttachment" runat="server" size="50" onchange="DisplayFileDescription()" />&nbsp;
                                      <asp:Label ID="lblFileChoosen" runat="server" Text=""></asp:Label>
                                  </td>
                              </tr>
                              <tr>
                                  <td width="10px">
                                  </td>
                                  <td style="font-weight: bold">
                                      File Description:
                                  </td>
                                  <td>
                                      <asp:TextBox runat="server" Width="300px" ID="txtFileDescription">
                                      </asp:TextBox>
                                  </td>
                              </tr>
                          </table>


&ЛТ;АСП:кнопка ID="btnSubmit" атрибут runat="сервер" текст="отправить" функция onclick="btnSubmit_Click"
Шрифт-жирный="истинный" CssClass="кнопка Отправить" ValidationGroup="SubmitGroup" /&ГТ;

2 Ответов

Рейтинг:
2

Vincent Maverick Durano

То, что вы видели, нормально, и это потому, что по соображениям безопасности. Поиск его в интернете, почему он так себя ведет, даст вам массу результатов. Вот одна короткая дискуссия: asp.net - элемент управления FileUpload очищает сам себя - переполнение стека[^]

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


Рейтинг:
1

Arasappan

  <asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional">
                        <ContentTemplate>

<table runat="server" id="tblExamFileAttachments" frame="box" visible="false" width="800px"

                              cellpadding="0" cellspacing="0">
                              <tr>
                                  <td width="10px">
                                  </td>
                                  <td style="font-weight: bold" colspan="2">
                                      Upload Exam Attachment File
                                      <br />
                                      <br />
                                  </td>
                              </tr>
                              <tr>
                                  <td width="10px">
                                  </td>
                                  <td style="font-weight: bold">
                                      Please select File :
                                  </td>
                                  <td>
                                      <asp:FileUpload ID="FileUploadAttachment" runat="server" size="50" onchange="DisplayFileDescription()" />&nbsp;
                                      <asp:Label ID="lblFileChoosen" runat="server" Text=""></asp:Label>
                                  </td>
                              </tr>
                              <tr>
                                  <td width="10px">
                                  </td>
                                  <td style="font-weight: bold">
                                      File Description:
                                  </td>
                                  <td>
                                      <asp:TextBox runat="server" Width="300px" ID="txtFileDescription">
                                      </asp:TextBox>
                                  </td>
                              </tr>
                          </table>
                          </ContentTemplate>
                           <Triggers>
       <asp:PostBackTrigger ControlID="btnSubmit" />
       </Triggers>
                          </asp:UpdatePanel>