ASP.NET Загрузить файл управления и показывает сообщение ожидания - PullRequest
0 голосов
/ 14 ноября 2018

Я уже искал в интернете и пробовал разные подходы, но мне очень трудно заставить его работать.Я приму любую помощь, включая компоненты третьих сторон, 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>&nbsp;</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

Спасибо всем

1 Ответ

0 голосов
/ 14 ноября 2018

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

Вы можете сделать это, используя 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>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...