我如何可以更改的文件的信息,Ajax文件上传的控制,Asp.net(VB)?

0

的问题

我创造一个拖文件上使用的Ajax文件上传控制在Asp.net(VB)。 我想说明的文件名称,上传的日期时,文件大小的时候我拖入面板。 我怎么能做那? 我可以改变的文本droparea喜欢

$(document).ready(function () {

            
            Sys.Extended.UI.Resources.AjaxFileUpload_Pending = "保留中";
            Sys.Extended.UI.Resources.AjaxFileUpload_Remove = "削除";
            Sys.Extended.UI.Resources.AjaxFileUpload_Uploaded = "アップロード済";
            Sys.Extended.UI.Resources.AjaxFileUpload_Uploading = "アップロード中";
            Sys.Extended.UI.Resources.AjaxFileUpload_UploadedPercentage = "アップロード中 {0} %";
            Sys.Extended.UI.Resources.AjaxFileUpload_Upload = "アップロード";

            document.getElementsByClassName
            $(".ajax__fileupload_dropzone").text("ここにファイルをドロップ");

            document.getElementsByClassName
            $(".ajax__fileupload_uploadbutton").text("アップロード");
            
        });

但我不知道如何变化的文件的信息显示。

这是我的拖形式和我想改变 application/pdfuploaded datetime

enter image description here

ajax asp.net vb.net webforms
2021-11-24 05:46:37
1

最好的答案

0

你真的不能显示的"时间"的负载直到用户的开始。

你已经可以看到,文件大小在你的屏幕盖,那么为什么需要的吗?

你有:

enter image description here

因此,在上面,你有看到该文件的名字,你看看文件的大小。

然而,直到这样的时候你打了载和启动加载文件,你不知道上载时作为尚未有,你呢?

所以,当你撞上载的文件,那么每个文件的选择将是加载,和在服务器方(代码隐藏),您有这样的:

Protected Sub AjaxFileUpload1_UploadComplete(sender As Object, e As AjaxControlToolkit.AjaxFileUploadEventArgs) Handles AjaxFileUpload1.UploadComplete

    Dim strFileSave As String
    strFileSave = Server.MapPath("~/Content/" & e.FileName)
    AjaxFileUpload1.SaveAs(strFileSave)

    ' now code to add say to a database table of files up-loaded.

    Using conn As New SqlConnection(My.Settings.TEST4)
        Dim strSQL = "INSERT IGNORE INTO MyUpoadFiles (FileName, UpLoadTime, Size, User_id) " &
                     "VALUES (@File, @Time,@Size, @User)"

        Using cmdSQL As New SqlCommand(strSQL, conn)
            conn.Open()
            With cmdSQL.Parameters
                .Add("@File", SqlDbType.NVarChar).Value = e.FileName
                .Add("@Time", SqlDbType.DateTime).Value = Date.Now
                .Add("@Size", SqlDbType.Int).Value = e.FileSize
                .Add("@User", SqlDbType.Int).Value = Membership.GetUser.ProviderUserKey
            End With
            cmdSQL.ExecuteNonQuery()
        End Using
    End Using


End Sub

现在,当时所有的文件上载,则该服务器方甚至UpLoadComplete所有将火,然后你可以把上面列表显示的文件加载随着文件、大小和时间。

但是,你真的没有能力,显示该文件的信息,例如什么时间,直到这样的时候,你上传文件,然后有时间,对吗?

编辑:

也许这个想法上是不是所有的清晰。 我的建议是,你必须上装载在网页上。

因此,说我们放弃在这个标记:

        <div style="width:40%;padding:25px">
        <ajaxToolkit:AjaxFileUpload ID="AjaxFileUpload1" runat="server" 
            OnClientUploadCompleteAll="MyCompleteAll"  ChunkSize="16384" />

            <asp:Button ID="cmdDone" runat="server" Text="Done" CssClass="btn" ClientIDMode="Static"/>
            <script>
                function MyCompleteAll() {
                    $('#cmdDone').click()
                  }
            </script>
            <asp:GridView ID="Gfiles" runat="server" CssClass="table"></asp:GridView>
        </div>

并请注意我们如何利用客户端的所有做击。

因此,我们现在有这样的:

enter image description here

我们撞上载,现在,我们看到这样的:

enter image description here

现在,我们应(需要)隐藏的做按钮-我们已经上传击,完成按钮我们。

因此,按钮在理论上应该成为这种隐藏它:

 <asp:Button ID="cmdDone" runat="server" Text="Done"
   style="display:none" ClientIDMode="Static"/>

和代码为那个按钮是这样的:

Protected Sub cmdDone_Click(sender As Object, e As EventArgs) Handles cmdDone.Click

    Dim rstFiles As New DataTable
    Using conn As New SqlConnection(My.Settings.TEST4)
        Dim strSQL As String = "select FileName, UpLoadTime, Size, User_id from MyUpLoadFiles"
        Using cmdSQL As New SqlCommand(strSQL, conn)
            conn.Open()
            rstFiles.Load(cmdSQL.ExecuteReader)
        End Using
    End Using

    Gfiles.DataSource = rstFiles
    Gfiles.DataBind()

    ' hide up-loader
    AjaxFileUpload1.Visible = False
End Sub
2021-11-26 04:01:16

阿尔伯特,谢谢你的回答。 我还是不能工作,这部分因为我需要做的其他项目,但我会试试你的答案,尽快为我可以。 你的答案真正地指出我的项目。 谢谢你这么多。 你救了我很多。
Chang

你好,我试着用你的代码时我撞上的按钮,数据可以插入的表格。 然后我做了一个选择的命令和集中数据表,但是我的内不能表现出完全和不隐藏ajaxfileupload领域。 我做了调试和我窥视了数据从我的数据库表。
Chang

好吧,我们上载的文件,它们加入该表。 但是,当所有文件(或者,也许你只是选择一个文件)都载入,然后我们有"完成"的按钮。 我当然不希望用户必须点击,完成按钮,所以请注意我们如何有线的"汇编的所有活动的"客户的侧有一些JavaScript击那个按钮我们。 我的意思是,对试验,只是让的文件(文件或文件)上的负荷。 然后点击那个按钮运行的代码后面现在采取值的数据的基础上表显示在网。 正如所指出的,我们将需要加user_id这表。
Albert D. Kallal

所以我不想用户必须点击按钮的时候完成的-这是什么小的量JavaScript不会-我没有假设你有jQuery可在该网页(我们都不????). 和一旦你好,这个工作的,然后我们会隐藏,"完成"的按钮。 但是,如果你不线,js代码,以点击按钮(由于我们必须有一个全面的后回来会发生!!! -你需要后回来。 你不能把格显示码在服务器一侧的阿贾克斯文件载的事件-你必须按一个按钮之后回来。 因此,按照上述标记与js代码,以点击按钮。
Albert D. Kallal

注意到在上述,怎么代码显示屏的网是在commadn做按一下按钮。 所以是明确的,我们不能把格显示的代码,在任何ajax文件载控制的事件。 我们需要单独的按钮。 为试验,只是下降的飞机的简按钮在网页上。 之后你载完成,然后点击按钮运行显示网的代码。 一旦你得到这工作,再加入上述js代码自动点击按钮。 然后添加一个风格"显示:没有"隐藏的那个按钮从用户。
Albert D. Kallal

其他语言

此页面有其他语言版本

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................