当前位置:编程学习 > C#/ASP.NET >>

NET iframe问题,在线等!!!!

我想实现在A.aspx中插入一个名为B的iframe控件,然后在A.aspx中上传一个图片,同时在B的iframe控件中显示这张图片? --------------------编程问答-------------------- 补充一下,上传图片用的是NET方法,我希望在上传的同时完成图片的显示 --------------------编程问答-------------------- 上传图片的同时读取图片路径显示就行了! --------------------编程问答-------------------- 关键是怎么显示 --------------------编程问答-------------------- 这里给你个代码参考下吧,没有用iframe,上传及显示图片 

 <div style="width: 100%; margin-top: 5px; line-height: 20px; padding-left: 10px;">
                                                            <asp:Image ID="Image1" runat="server" Width="155" Height="110" Style="border: solid 1px #454545;" />
                                                            <span style="color: Red; font-size: 12px;">可接受BMP、GIF、PNG、JPG格式,且不可大于300kb </span>
                                                        </div>
                                                        <div style="width: 100%; margin-top: 5px; line-height: 20px; padding-left: 10px;">
                                                            <asp:FileUpload ID="FileUpload1" runat="server" />    
                                                            <asp:Button ID="Button1" runat="server" Text="预览" OnClick="Button1_Click" />    
                                                            <asp:Button ID="Button2" runat="server" Text="上传" OnClick="Button2_Click" />
                                                        </div>


后台文件:

  /// <summary>
        /// 预览图片的事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Button1_Click(object sender, EventArgs e)
        {
            string name = FileUpload1.FileName;//获取客户端上的文件名称
            string dummy = Server.MapPath("/manager/Images/preview/");//获得服务器上的虚拟路径
            string fileSuffix = System.IO.Path.GetExtension(name).ToLower();//判断上传文件的类型-通过System.IO.Path.GetExtension()静态方法.ToLower()字体变小写
            bool estimate = false;//判断文件格式
            if (FileUpload1.HasFile)//是否有上传文件
            {

                string[] genreSuffix = { ".gif", ".bmp", ".jpg", ".png" };//图片的后缀名
                for (int i = 0; i < genreSuffix.Length; i++)
                {
                    if (fileSuffix == genreSuffix[i])
                        estimate = true;
                }
                if (FileUpload1.PostedFile.ContentLength >= 300 * 1024)//判断图片的大小
                {
                    user.MessageShowBack("文件大小不允许超过300kb,并且为.gif或.bmp或.jpg或.png格式的文件");
                }
            }
            if (estimate)
            {
                string filenameGUID = Guid.NewGuid().ToString() + fileSuffix;
                FileUpload1.PostedFile.SaveAs(dummy + "\\" + filenameGUID);//将上载文件的内容保存到 Web 服务器上的指定路径
                Image1.ImageUrl = "/manager/Images/preview/" + filenameGUID;
            }
        }

        /// <summary>
        /// 上传图片的事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Button2_Click(object sender, EventArgs e)
        {
            if (FileUpload1.FileName.ToString() == string.Empty && Image1.ImageUrl == "/manager/skin/default/reg_suc_icon.gif")
            {
                user.MessageShowBack("图片上传不能为空!");
            }
            else
            {
                string serverPath = Server.MapPath("/manager/Images/uploadpicture/");//获得服务器上新的虚拟路径
                string file = Image1.ImageUrl;//获得文件存放的路径
                int intFile = file.LastIndexOf("/");//获得最后一个单词
                string fileNamePath = file.Substring(intFile);//返回位于 String 对象中指定位置的子字符串
                string fileName = fileNamePath.Remove(0, 1);
                string imgurl = Server.MapPath(Image1.ImageUrl);//获取文件的原路径及名称 
                try
                {
                    File.Move(imgurl, serverPath + fileName);//将指定文件移到新位置,并提供指定新文件名的选项
                    this.Page.ClientScript.RegisterStartupScript(this.GetType(), "", "<script>alert('文件已上传')</script>");
                }
                catch
                {
                    this.Page.ClientScript.RegisterStartupScript(this.GetType(), "", "<script>alert('文件已存在')</script>");
                    return;
                }
                finally
                {
                    Image1.ImageUrl = "/manager/Images/uploadpicture/" + fileName;
                    string s = Image1.ImageUrl;
                    dp.CommandText = "update review_users set picurl='" + s + "' where username='" + Session["Critique_username"].ToString() + "'";//新头像文件地址更换
                    dp.NonQuerySQL();
                }
            }
        }


这个是很早以前做的,不用 iframe上传 加显示  --------------------编程问答-------------------- 我现在需要iframe来实现,也就是我想实现图片混排 --------------------编程问答-------------------- 1-最老的方法b页面在a页面上传成功后刷新下就出来了,
2-异步 --------------------编程问答-------------------- 目前我已经可以实现上面所说的操作,上传图片的同时将图片显示到iframe的网页中,但随即就会刷新掉,不知何解?
补充:.NET技术 ,  ASP.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,