none
问题名字不好起,直接看描述吧 RRS feed

  • 问题

  • //上传按钮单击事件 
    protected void btnUpload_Click(object sender, EventArgs e)
        {
                 if (isFile(strFile)) //判断上传文件是否存在
                {
                   //如果不存在,
         //SaveAs到指定路径,写入数据库
                }
                else
                {
          //如果存在弹出提示,是否覆盖,点击是表示覆盖SaveAs到指定路径,不写入数据库
          //此时 else里的代码,应该在点击上传控件后就判断文件是否存在,然后注册客户端脚本。
          //而我这里直接写道上传按钮里,点击上传判断文件存在,此时注册脚本事件是不是已经晚了。
          //怎么设计才可以答案,点击上传文件,isFile为true,执行保存,写入数据库。
          //else 弹出提示,文件存在,是否覆盖,点击是,文件保存也就是覆盖。不写入数据库

                    string strJs = @"function isReptFile(){return confirm('文件已经存在是否覆盖')}";
                    Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "Script", strJs, true);
                 //   btnUpload.Attributes.Add("OnClientClick", "return isReptFile()");
                }
              
            }
        }

    2009年11月30日 5:24

答案

  • <%@ Page Language="C#" AutoEventWireup="true" %>
    <script runat="server">
        
        public Boolean HasFile
        {
            get 
            { 
                // 检查文件是否存在
                // 测试数据始终存在。
                return true; 
            }
        }
        
        protected void Button1_Click(object sender, EventArgs e)
        {
            Response.Write("成功!");
        }
    </script>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <script>
    
                function ShowConfirm() {
                    // 这里也可以用其它方式代替。
                    var hasfile = "<%=HasFile %>" == "True" ? true : false;
                    return !hasfile || confirm('你确定吗?');
                }
            </script>
            <asp:Button ID="Button1" runat="server" OnClientClick="return ShowConfirm();" onclick="Button1_Click" Text="上传" />
        </div>
        </form>
    </body>
    </html>

    知识改变命运,奋斗成就人生!
    • 已标记为答案 极度 2009年11月30日 5:54
    2009年11月30日 5:37
    版主