前台布局和样式
<%--上传图片部分--%>
<div id="sctp" style="width:80%;">
<fieldset style="margin-top:10px; padding:4px 10px 10px 10px;">
<legend>上传图片</legend>
<table border="0" cellpadding="0" cellspacing="0" style="width:100%;">
<tr>
<td valign="top">
<ol id="ol_img"></ol>
<p id="p_err" style="color:Red;"></p>
</td>
<td rowspan="2" valign="top" style="width:200px;">
<div style="border:solid 1px #999; background-color:#f0f0f0; font-size:11px; padding-left:10px;">
<p>1、图片大小不能超过<b>2M</b></p>
<p>2、支持格式:.jpg .gif .png .bmp</p>
</div>
</td>
</tr>
<tr>
<td valign="bottom">
<div class="sc"> <input id="File1" runat="server" type="file" />
<asp:Button ID="btnupload" runat="server" Text="上传" οnclick="btnupload_Click" /><div id="divResult" runat="server"><asp:Label ID="Label3" runat="server" Text=""></asp:Label></div>
</div>
</td>
</tr>
</table>
</fieldset>
</div>
加上一段js代码,
<script src="js/Jquery1.7.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
setInterval($('#Label1').remove(), 10);
})
</script>
下面是button的click事件中添加的代码,
protected void btnupload_Click(object sender, EventArgs e)
{
if (File1.PostedFile.ContentType.ToUpper().IndexOf("IMAGE") > -1)
{
System.Drawing.Image img = System.Drawing.Image.FromStream(File1.PostedFile.InputStream);
int Width = img.Width;
int Height = img.Height;
if (Width > 60 || Height > 60 || File1.PostedFile.ContentLength > 1024 * 1024 * 2)
{
Label3.Text = "温馨提示:你上传的头像尺寸不符合要求,请重新选择图片(图片大小:60*60)!";
}
else
{
string sPath = Server.MapPath(System.DateTime.Now.ToString("yyy-MM-dd") + Session.SessionID + ".jpg");
this.File1.PostedFile.SaveAs(sPath);
Label3.Text = "恭喜你,头像上传成功!";
}
}
else
{
Response.Write("请选择图片文件!");
}
string filename = this.File1.PostedFile.FileName;
filename = DateTime.Now.Ticks.ToString() + filename.Substring(filename.LastIndexOf("."));
this.File1.PostedFile.SaveAs(Server.MapPath("upload") + "\\" + filename);
StringBuilder sb = new StringBuilder();
content1.InnerHtml += sb.Append("<img src=\"upload/" + filename + "\" />").ToString();
}