使用适用于所有浏览器的javascript清除ASP.Net 2.0文件上传控件的值?

时间:2010-09-24 18:45:53

标签: asp.net file-upload controls

我们正在运行以下javascript函数:

function btn_AddToList_Click() {

var  filePath = document.getElementById("FileUpload").value;

if(filePath.length > 0)
     {

        var opt = new Option(filePath,filePath);    
        var listBox = document.getElementById("ListBox");
        listBox.options[listBox.options.length] = opt;
     }
   }    

功能绑定:

protected void Page_Load(object sender, EventArgs e)
    {

        if (!IsPostBack)
        {
            btn_AddToList.Attributes.Add("onclick", "btn_AddToList_Click(); return false;");
        }

    }

HTML:

 asp:FileUpload ID="FileUpload" runat="server" Width="394px"

   asp:ListBox ID="ListBox" runat="server" Width="394px"

   asp:Button ID="btn_AddToList" runat="server" Enabled="true" Text="Add" 

问题是单击“添加”按钮后,“FileUpload”的值未被清除。有什么帮助吗?

1 个答案:

答案 0 :(得分:0)

您无法以编程方式设置/清除FileUpload控件的值。这是对安全原因的限制。如果没有此限制,请考虑这一点,您可以将FileUpload控件的值设置为某个任意文件并将其上载到您的服务器。你无法以目前的形式实现这一目标。

作为一种解决方法,您可以尝试将另一个文本框准确地放在FileUpload控件的文本框部分之上。通过这种方式,您将获得与您想要实现的目标相同的感受。但这也不理想,可能无法正常工作。