FileUpload控件,输入错误文件名后,报脚本错

m_halfman 2007-12-07 10:47:42
.net 2005,尝试了asp:FileUpload和input type=file,现象一样。
随意输入一串字符串,比如ee或者1234,点击按钮后报脚本错,“拒绝访问”。

.NET生成的前台代码如下:

var theForm = document.forms['aspnetForm'];
if (!theForm) {
theForm = document.aspnetForm;
}
function __doPostBack(eventTarget, eventArgument) {
if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
theForm.__EVENTTARGET.value = eventTarget;
theForm.__EVENTARGUMENT.value = eventArgument;
theForm.submit(); //报错行在这一行
}
}

因为是自动生成的前台代码里的错误,我无法捕获错误。

但是,如果输入一个不存在但是格式符合的文件名,比如C:\1.txt(不存在),不会报这个错,可以进入后台代码,因而我可以捕获错误。
很不明白,这应该不是前台为我做的检查,简单字符会导致上传控件出错吗?谁能指教
...全文
151 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
luokun 2008-01-02
  • 打赏
  • 举报
回复
我觉得是.net的BUG。
m_halfman 2007-12-11
  • 打赏
  • 举报
回复
To xierfly:我只是想捕获这个错误,不要报脚本错。
m_halfman 2007-12-11
  • 打赏
  • 举报
回复
在哪里判断?后台我做了判断,但出这个错的时候还没有走到后台代码,前台是自动生成的代码,我判断不了。
大正他爹 2007-12-10
  • 打赏
  • 举报
回复
先判断一下输入的格式,再执行上传的事件,
xierfly 2007-12-10
  • 打赏
  • 举报
回复
asp:FileUpload这个控件,是要有c:\…… 路径格式呀。你从后台判断的时候怎么判断的,当然是用postfile.filename获取文件名,等等。
如果像你那样手动输入格式不对的,应该也一定会出问题。

----个人见解。
m_halfman 2007-12-10
  • 打赏
  • 举报
回复
请看清楚我的问题,这些前台代码是.NET自动生成的,我是在页面出来后,查看源文件
而看到的。我做的只是放了个asp:FileUpload控件。
nanjg 2007-12-07
  • 打赏
  • 举报
回复
莫非csdn编辑框的毛病??
if(!theForm.onsubmit()||(theForm.onsubmit()!=false)){
nanjg 2007-12-07
  • 打赏
  • 举报
回复
莫非csdn编辑框的毛病??
if (!theForm.onsubmit ()|| (theForm.onsubmit() != false)) {

nanjg 2007-12-07
  • 打赏
  • 举报
回复
if (!theForm.onsubmit ¦ ¦ (theForm.onsubmit() != false)) {

onsubmit 后边的()呢
nanjg 2007-12-07
  • 打赏
  • 举报
回复
'aspnetForm' alert 下

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧