Я уже искал в Интернете и пробовал разные подходы, но мне очень трудно заставить его работать. Я приму любую помощь, включая сторонние компоненты, javascript и все такое ... Моя проблема (я думаю) в том, что я использую не кнопку «Загрузить», а кнопку, которая также сохраняет форму данных. Разметка:
<div id = "divInserimento" runat = "server" class = "contact-form scrollDiv">
<div>
<asp:TextBox runat = "server" ID = "txtTitolo" placeholder = "Titolo nota" CssClass = "input_text" MaxLength = "1000"></asp:TextBox>
</div>
<div>
<asp:TextBox runat = "server" ID = "txtNota" placeholder = "Nota" CssClass = "input_text" TextMode = "MultiLine" Height = "10em"></asp:TextBox>
</div>
<div style = "padding: 3px; background-color: whitesmoke; border: 1px solid black;">
<asp:FileUpload runat = "server" ID = "MyFileUpload" Width = "100%" />
<asp:HiddenField runat = "server" ID = "hdnNomeFile" />
</div>
<p> </p>
<table border = "0" cellspacing = "0" cellpadding = "0" style = "width: 100%">
<tr>
<td align = "left">
<asp:Button runat = "server" CssClass = "gbutton" ID = "btnAnnullaIns" Text = "Annulla" UseSubmitBehavior = "false" OnClick = "btnAnnullaIns_Click" />
</td>
<td align = "right">
<asp:Button runat = "server" CssClass = "gbutton" ID = "btnConfermaIns" Text = "Conferma" OnClick = "btnConfermaIns_Click" UseSubmitBehavior = "false" />
</td>
</tr>
</table>
</div>
Код позади:
Function Upload()
Dim file As String = ""
If MyFileUpload.HasFile Then
If MyFileUpload.PostedFile.ContentLength <= 15000000 Then
'throbber.Style("display") = "normal"
Dim path As String = My.Settings.pathUpload1 & rfCliente & My.Settings.pathUpload2
If Not Directory.Exists(path) Then
'If Directory (Folder) does not exists. Create it.
Directory.CreateDirectory(path)
End If
file = path & MyFileUpload.FileName
MyFileUpload.SaveAs(file)
hdnNomeFile.Value = file
ClientScript.RegisterStartupScript(Me.GetType(), "Scriptkey", String.Format("alert('{0}');", "File caricato: " & MyFileUpload.FileName), True)
If MyFileUpload.FileName.Contains(".txt") Then
Dim srRead As New System.IO.StreamReader(file)
Dim strFileText As String = ""
strFileText = srRead.ReadToEnd
srRead.Close()
txtNota.Text = strFileText
txtTitolo.Text = MyFileUpload.FileName
End If
Return True
Else
hdnNomeFile.Value = ""
ClientScript.RegisterStartupScript(Me.GetType(), "Scriptkey", String.Format("alert('{0}');", "Errore nel caricamento"), True)
Return False
End If
'throbber.Style("display") = "none"
Else
ClientScript.RegisterStartupScript(Me.GetType(), "Scriptkey", String.Format("alert('{0}');", "Il file supera le dimensioni massime consentite (15mb)"), True)
Return False
End If
End Function
Функция «Загрузить» вызывается нажатием кнопки btnConfermaIns следующим образом:
If MyFileUpload.HasFile Then
If Upload() Then
inserimentoNota()
Else
ClientScript.RegisterStartupScript(Me.GetType(), "Scriptkey", String.Format("alert('{0}');", "Errore nel caricamento"), True)
End If
Else
inserimentoNota()
End If
Спасибо вам всем





Если я правильно понял, вы хотите показать сообщение «подождите», пока файл загружается.
Вы можете сделать это с помощью javascript:
<asp:Button runat = "server" CssClass = "gbutton" ID = "btnConfermaIns" Text = "Conferma" OnClick = "btnConfermaIns_Click" UseSubmitBehavior = "false" OnClientClick = "showWaitingMessage()" />
<div id = "waitMessage" style = "display: none;">Please wait...</div>
<script>
function showWaitingMessage() {
document.getElementById("waitMessage").style.display = "block";
}
</script>
так просто! Все перепробовала кроме этого! Спасибо