【问题标题】:Opening asp Fileupload control from javascript从javascript打开asp Fileupload控件
【发布时间】:2011-09-12 09:27:59
【问题描述】:

我的 aspx 页面上有一个 asp Fileupload 控件,如下所示:

我有一个 asp 按钮。在此按钮的 ClientClick 上,我从 javascript 打开文件上传控件,如下所示:

---------javascript -------------

 function OpenFileDialog() {
 var result = document.getElementById(("<%=fu_Import.ClientID %>")).click();            
        return true;
    }

fielDialog 正确打开,但是当我选择任何文件并单击该 FileDailog 中的打开按钮时,没有任何反应。我的意思是那个 Asp:Button 的 Onclick 事件没有被调用。文件上传控件的文件名属性也没有设置。

protected void btnImportIdiomCSV_Click(object sender, EventArgs e)
{
    try
    {                  
        if (fu_Import.PostedFile.FileName == string.Empty)
        {
          // Error meessage
        }
        else
        {
            // Do something
        }

【问题讨论】:

  • 试试非IE浏览器。运气好吗?

标签: javascript asp.net file-upload c#-3.0


【解决方案1】:

我很确定您必须将代码添加到 Page_Load 方法并检查以下内容:

  1. 如果您要回帖
  2. 如果 PostedFile 文件长度不为零

在您的情况下,导致回发的不是按钮的单击事件,这就是它没有被调用的原因。

通常人们会在点击保存按钮或类似的东西后上传。

【讨论】:

    【解决方案2】:

    使用这个:

     onclick="document.getElementById('<%=fu_Import.ClientID%>').click(); return false;"
    

    例如:

    <a href="#" onclick="document.getElementById('<%=fu_Import.ClientID%>').click(); return false;">Upload</a>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-20
      • 2014-08-31
      • 2010-09-24
      • 1970-01-01
      • 1970-01-01
      • 2011-04-03
      • 2018-03-06
      相关资源
      最近更新 更多