【问题标题】:Upload completion event in Ext.net (ASP.NET)?Ext.net (ASP.NET) 中的上传完成事件?
【发布时间】:2011-10-09 12:22:10
【问题描述】:

如何在 ext.net 的 FileUploadField 完成时显示一条消息。 (在客户端使用 Javascript)。

我使用 ext.net UploadField 的代码:

<script type="text/javascript">
    function checkExtension(value) {
        if (value.match("\.png$") != null || value.match("\.jpg$") != null
        || value.match("\.jpeg$") != null || value.match("\.gif$") != null) 
            return true;
        alert("The file must be image");
        return false;
    }
</script>

<ext:FileUploadField ID="FileUploadField1" runat="server" Icon="Attach" ButtonText="Select File" Visible="true" ButtonOffset="1" ButtonOnly="true" Validator="checkExtension">
    <DirectEvents>
        <FileSelected OnEvent="ImageFileSelected" />
    </DirectEvents>
</ext:FileUploadField>

【问题讨论】:

  • 我还没有使用 ext.net,但我可以帮助你使用 YUI 上传器。看看这里http://labs.deeptechtons.com/asp-net-tuts/how-to-upload-files-asynchronously-using-yahoo-uploader/

标签: javascript c# asp.net dom-events ext.net


【解决方案1】:

第一个解决方案(完整客户端):

<ext:FileUploadField ID="FileUploadField1" runat="server" Icon="Attach" ButtonText="Select File" Visible="true" ButtonOffset="1" ButtonOnly="true" Validator="checkExtension">
    <DirectEvents>
        <FileSelected OnEvent="ImageFileSelected" 
              Success="Ext.Msg.alert('Success');" 
              Failure="Ext.Msg.alert('Failure');" />
    </DirectEvents>
</ext:FileUploadField>

第二种解决方案(服务器端脚本生成):

public void ImageFileSelected(object sender, DirectEventArgs e) {
    if (this.FileUploadField1.HasFile) {
        // save file here

        X.Msg.Show(new MessageBoxConfig {
           Buttons = MessageBox.Button.OK,
           Icon = MessageBox.Icon.INFO,
           Title = "Success",
           Message = string.Format(tpl, this.FileUploadField1.PostedFile.FileName,  
           this.FileUploadField1.PostedFile.ContentLength)
        });
    }
}

你可以看这里http://examples.ext.net/#/Form/FileUploadField/Basic/

【讨论】:

    【解决方案2】:

    有几种方法可以做到这一点。

    一种“便宜的技巧”方法是在您的页面中添加一个空白文字,并在 onfileuploaded 事件(或您想要的任何事件)期间使用触发您的 javascript 函数所需的文本更新它的文本。 (请注意,这种方法只有在有实际页面回发时才有效!)

    在 ASP.NET 中管理此问题的另一种方法(并且被认为是“正确”的方法)是将脚本管理器添加到您的页面并在 onfileuploaded 事件(或您想要的任何事件)中注册您的客户端脚本。这些代码示例很多而且很容易google-able.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-04-20
      • 1970-01-01
      • 1970-01-01
      • 2012-10-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多