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

100分求解Fileupload 上传图片避免图片路径被刷新掉的方法???

我用的asp.net FileUpload 上传图片以二进制存数据库 当页面提示错误是 弹出 Response.Write("<script>alert('" + ex.Message + "')</script>");这样会把原有的文件路径刷掉 还得再选一次文件 就算我能把文件路径存下来 但是由于安全性 FileUpload 不能给它赋值 但是又不能避免页面刷掉文件路径 各位谁有好点的解决方案呢 如果能解决的话再加分也可以

在线等待........ --------------------编程问答-------------------- 用iframe页面上传,然后返回路径给parent --------------------编程问答-------------------- 能具体点吗
--------------------编程问答-------------------- 可以写 <td>
            <iframe id="upfile" name="upfile" src="PhotoUpload.aspx" scrolling="No" frameborder="0"
                width="350px" height="30"></iframe>
        </td>

然后在PhotoUpload.aspx页面中添加 fileupload控件 就行了! --------------------编程问答-------------------- 楼上的方法 我刚才试了 当点击按钮的时候iframe 中嵌套 PhotoUpload.aspx 的文件路径还是被刷掉了 --------------------编程问答-------------------- 没看懂意思,
作个隐藏域存放值可行不? --------------------编程问答-------------------- 哪里看不懂呢 我的意思就是用 FileUpload 上传图片时怎么避免因页面刷新而把文件路径刷掉的问题 --------------------编程问答-------------------- 写 Response.Write("<script>alert('" + ex.Message + "')</script>"); 这种代码没进过正规sp.net开发团队的开发人员。如果你调试一下浏览器端的html源代码,你还能看到一个合格的html吗?你输出的语句孤悬真正的html之前,你不过是靠ie浏览器比较能够接受非法html的功能而已。

真正的编程人员,应该知道使用 RegisterClientScriptBlock 或者 RegisterStartupScript 等来输出脚本。 --------------------编程问答-------------------- 其实你的问题是 判断的时候出错的啊.

你判断用ajax判断好, 之后再提交.这样就不会出错了.

也就不存在刷新的问题了. --------------------编程问答--------------------
引用 7 楼 sp1234 的回复:
写 Response.Write("<script>alert('" + ex.Message + "')</script>"); 这种代码没进过正规sp.net开发团队的开发人员。如果你调试一下浏览器端的html源代码,你还能看到一个合格的html吗?你输出的语句孤悬真正的html之前,你不过是靠ie浏览器比较能够接受非法html的功能而已。

真正的编程人员,应该知道使用 Register……

sp1234发飙啦 --------------------编程问答-------------------- 把地址存session里面 失败的时候在赋值 --------------------编程问答--------------------
引用 10 楼 pbw68277118 的回复:
把地址存session里面 失败的时候在赋值

 你能别这么2么。。 --------------------编程问答-------------------- 处于安全考虑,file控件是无法赋值的,要是可以赋值,岂不是可以随意把用户电脑上的文件传到服务器上。所以必须由用户自己明确的选择要上传的文件。 --------------------编程问答-------------------- 做测试的,不懂帮顶;我只知道,用jira报bug时,如果忘记了某个必填项,就提交的话,附件会被冲掉,哎,又得重新上传…… --------------------编程问答-------------------- 用script能解决吗?
<script ....>   //注:示意代码,不保证拼写之类完全正确
   var path="<%=path%>";
   window.onload=function(){document.getElementById("fileuplade的id").value=path;}
<script>

在后台代码中,string path
然后在btn_OnClick中,对path赋值 --------------------编程问答-------------------- 七楼说的确实有道理 我那样写确实不太标准 我以后会注意的 只是我的问题还是没有解决啊 我用七楼那位高手说的那样   Page.RegisterStartupScript("", "<script>alert('" + ex.Message + "');</script>"); 但是还是不能解决我的问题啊
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,