下面的是上传文件的代码,为什么点击"发送(1)"(HTML服务器按钮)按钮会显示该页无法显示呢?
而当我重新启动页面点"发送(2)"(asp.net button)按钮并且发送一个文件时成功,之后在继续发送另一个文件时,又显示该页
无法显示,我快晕了,出错不要紧,可我搞不清楚,为什么有时候行,而有时候不行呢?头一次碰到这样的问题啊,请赐教
function addFileControl()
{
var str = '<INPUT type="file" NAME="File"></br>'
document.getElementById('FileCollection').insertAdjacentHTML("beforeEnd",str)
}
<form id="form1" runat="server" enctype="multipart/form-data">
<input id="addFile" type="button" value="添加附件" onclick="addFileControl()"/>
<asp:Label ID="Label4" runat="server"></asp:Label><br />
<P id="FileCollection">
<INPUT type="file" name="File"><br>
</P>
<input id="Button1" runat="server" type="button" value="发送(1)" disabled="disabled" onserverclick="Button1_ServerClick"/><br />
<asp:Button ID="Button2" runat="server" OnClick="Button2_Click" Text="发送(2)" />
</form> protected void Button1_ServerClick(object sender, EventArgs e)
{
UpFiles();
}
protected void Button2_Click(object sender, EventArgs e)
{
UpFiles();
}
private bool UpFiles()
{
//遍历File表单元素
System.Web.HttpFileCollection files = System.Web.HttpContext.Current.Request.Files;
//状态信息
System.Text.StringBuilder strMsg = new System.Text.StringBuilder("上传的文件信息分别为:<hr color=red>");
int fileCount;
int filecount = files.Count;
try
{
for (fileCount = 0; fileCount < files.Count; fileCount++)
{
//定义访问客户端上传文件的对象
System.Web.HttpPostedFile postedFile = files[fileCount];
string fileName, fileExtension;
//取得上传得文件名
fileName = System.IO.Path.GetFileName(postedFile.FileName);
if (fileName != String.Empty)
{
//取得文件的扩展名
fileExtension = System.IO.Path.GetExtension(fileName);
//上传的文件信息
strMsg.Append("上传的文件类型:" + postedFile.ContentType.ToString() + "<br>");
strMsg.Append("客户端文件地址:" + postedFile.FileName + "<br>");
strMsg.Append("上传文件的文件名:" + fileName + "<br>");
strMsg.Append("上传文件的扩展名:" + fileExtension + "<br><hr color=red>");
//保存到指定的文件夹
postedFile.SaveAs(Server.MapPath("../MailFiles/admin/NormalMail/") + fileName);
}
}
Label4.Text = strMsg.ToString();
return true;
}
catch (System.Exception error)
{
Label4.Text = error.Message;
return false;
}
}
而当我重新启动页面点"发送(2)"(asp.net button)按钮并且发送一个文件时成功,之后在继续发送另一个文件时,又显示该页
无法显示,我快晕了,出错不要紧,可我搞不清楚,为什么有时候行,而有时候不行呢?头一次碰到这样的问题啊,请赐教
function addFileControl()
{
var str = '<INPUT type="file" NAME="File"></br>'
document.getElementById('FileCollection').insertAdjacentHTML("beforeEnd",str)
}
<form id="form1" runat="server" enctype="multipart/form-data">
<input id="addFile" type="button" value="添加附件" onclick="addFileControl()"/>
<asp:Label ID="Label4" runat="server"></asp:Label><br />
<P id="FileCollection">
<INPUT type="file" name="File"><br>
</P>
<input id="Button1" runat="server" type="button" value="发送(1)" disabled="disabled" onserverclick="Button1_ServerClick"/><br />
<asp:Button ID="Button2" runat="server" OnClick="Button2_Click" Text="发送(2)" />
</form> protected void Button1_ServerClick(object sender, EventArgs e)
{
UpFiles();
}
protected void Button2_Click(object sender, EventArgs e)
{
UpFiles();
}
private bool UpFiles()
{
//遍历File表单元素
System.Web.HttpFileCollection files = System.Web.HttpContext.Current.Request.Files;
//状态信息
System.Text.StringBuilder strMsg = new System.Text.StringBuilder("上传的文件信息分别为:<hr color=red>");
int fileCount;
int filecount = files.Count;
try
{
for (fileCount = 0; fileCount < files.Count; fileCount++)
{
//定义访问客户端上传文件的对象
System.Web.HttpPostedFile postedFile = files[fileCount];
string fileName, fileExtension;
//取得上传得文件名
fileName = System.IO.Path.GetFileName(postedFile.FileName);
if (fileName != String.Empty)
{
//取得文件的扩展名
fileExtension = System.IO.Path.GetExtension(fileName);
//上传的文件信息
strMsg.Append("上传的文件类型:" + postedFile.ContentType.ToString() + "<br>");
strMsg.Append("客户端文件地址:" + postedFile.FileName + "<br>");
strMsg.Append("上传文件的文件名:" + fileName + "<br>");
strMsg.Append("上传文件的扩展名:" + fileExtension + "<br><hr color=red>");
//保存到指定的文件夹
postedFile.SaveAs(Server.MapPath("../MailFiles/admin/NormalMail/") + fileName);
}
}
Label4.Text = strMsg.ToString();
return true;
}
catch (System.Exception error)
{
Label4.Text = error.Message;
return false;
}
}
解决方案 »
- 求一段循环显示图片JS代码
- js 注释
- Datalist嵌套datalist,内datalist事件该如何写?
- vs2005调用脚本不更新
- “应输入class、delegate、enum、interface或struct”这是什么意思?---已经贴上代码,请指教!
- 我做了一个自定义空间,有个关于要现实ICollection接口的东西搞不懂啊
- 有关doPostBack()的问题,高手来帮帮忙,急,在线等
- 软件流程图
- 关于datalist中checkbox和textbox问题,选中checkbox就验证textbox否则就不验证。详细请进……
- 我遇到一个vs.net奇怪问题
- IIS问题
- 问个查询语句?
首先,停止以下服务:
IIS Admin Service
World Wide Web Publishing Service
HTTP SSL
Simple Mail Transfer Protocol (SMTP)
FTP Publishing Service
然后, 编辑:C:\Windows\system32\inesrv\metabase.xml
找到:ASPMaxRequestEntityAllowed 默认为 204800 (200k),改成需要的例如改为AspMaxRequestEntityAllowed=1024000 !哪么就可以上传1G的文件了
最后,启动上面被停止的服务,就算完成了!
解决方法2
1. 新建文本文件:
Code Content:
'use VBS
set obj1=GetObject("winmgmts:/root/MicrosoftIISv2")
set obj2=obj1.get("IIsWebVirtualDirSetting='W3SVC/1/ROOT'")
'Output default value
WScript.Echo "AspMaxRequestEntityAllowed Default Value: " & obj2.AspMaxRequestEntityAllowed
'Reset the value
obj2.AspMaxRequestEntityAllowed=1024000 ' set to 1mbyte, u can set to other what you want :)
' Save data
obj2.Put_()
'Output new value
WScript.Echo "AspMaxRequestEntityAllowed New Value: " & obj2.AspMaxRequestEntityAllowed
2. 保存为requestchange.vbs
3. 进入命令行, 运行:
cscript [path]requestchange.vbs