文件上传在asp.net中无法正常运行

时间:2012-04-10 09:27:12

标签: asp.net .net file-upload

我从asp.net的文件上传控件上传文件。在该页面上有一个复选框。用户必须先接受条件才能上传文件。我正在检查文件后面的代码,如果未选中复选框显示警告消息,但问题是在调用该函数之前,文件将在服务器上缓冲整个然后调用该函数。但是我想在临时上传该文件之前检查这个条件。

以下是我正在使用的代码 -

protected void btn_Upload_Click1(object sender, EventArgs e)
    {
        if (!chkBx_1.Checked )
        {
            dataclass.Message("Please accept all terms before uploading", this);
            return;

        }
        else
        {
            if (FileUpload1.HasFile)
            {
                FileUpload1.SaveAs("path");
            }

        }        
      }

3 个答案:

答案 0 :(得分:1)

在将表单提交到服务器之前,先使用一些客户端技术(javascript,silverlight等)来检查复选框。

如果您想确定,可以重新检查服务器端的复选框。

答案 1 :(得分:1)

在继续之前,您可以更轻松地在客户端验证checkbox。 看看这篇关于Related checkbox validation with JQuery的文章。同样在click功能中,您可以使用event.preventDefault()

例如

<input id="chbTest" cssClass="clChb" value="1" type="checkbox">
<script language="javascript">
(document).ready(function(){
$("#btnUpload").click(function(event){

    if ($(".clChb").attr("checked") == false){
            event.preventDefault();
            alert('Please accept all terms before uploading ');
    }

});

});
</script>

此外,如果您不熟悉,可以查看有关Using jQuery with ASP.NET的文章,其中介绍了如何包含必要的脚本库。

答案 2 :(得分:1)

尝试使用工具箱验证程序“RequiredFieldValidator”验证此复选框。