OnClientClick知识+一个上传的例子
文件名:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Image ID="Image1" runat="server" />
<br/>
<input type="file" name="f1" id="f1">
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" OnClientClick="return exisitExit()" />
<script>
function exisitExit() {
var f1 = document.getElementById("f1");
var ext= f1.value.substring(f1.value.lastIndexOf("."));
if (ext == ".jpg" || ext == ".jpeg" || ext == ".gif") {
return true;
}
else {
alert("文件类型不符合人要求");
return false;
}
}
</script>
OnClientClick是客户端脚本,一般使用javascript,在客户端,也就是IE中运行,点击后马上执行
protected void Button1_Click(object sender, EventArgs e)
{
//路径 文件名 扩展名 要求的存储格式~数组
HttpPostedFile hf = Request.Files["f1"];
string filename = hf.FileName;//全路径:F:\asp\456.jpg :FileName要上传的文件所在地
string Imgname = Path.GetFileName(filename);//文件名:456
string ext = Path.GetExtension(Imgname).ToLower();//获取拓展名:.jpg
Response.Write(Imgname + "<br/>" + ext);
string[] exts = {".jpg",".jpeg",".png",".bmp",".gif" };
bool tag = false;
foreach (string item in exts)
{
if (item == ext)
{
tag = true;
break;
}
}
if(tag) //扩展名符合要求,upload 自定义日期(dir) dirpath SaveAS(durpath+imgname)
{
if (hf.ContentLength < 1024 )
{
string uppath="upload/";
string dir = DateTime.Now.Year + "/" + DateTime.Now.Month + "/" + DateTime.Now.Day;
string dirpath = Server.MapPath(uppath + dir);
if (!Directory.Exists(dirpath))
{
Directory.CreateDirectory(dirpath);
}
if (TextBox1.Text != "")
{
Imgname = TextBox1.Text + ext;
}
hf.SaveAs(dirpath + Imgname);
Image1.ImageUrl = uppath + dir + Imgname;
Image1.Width = 400;
Image1.Height = 300;
}
else
{
Response.Write("<script>alert('上传文件太大')</script>");
}
}
else
{
Response.Write("<script>alert('文件格式不对')</script>");
}
}
最新文章
- Trianglify - 生成五彩缤纷的 SVG 背景图案
- Python中list,tuple,dict,set的区别和用法
- 使用QTP测试Web对象
- .NET读取Office文件内容(word、excel、ppt)
- golang:slice陷阱
- Valgrind 安装与使用
- KVO的实现原理探寻
- .NET开源 FAQ
- CSS排序工具csscomb
- 【iOS】UIDynamicAnimator动画
- javascript中的函数节流和函数去抖
- 迁移svn项目到git
- 颜色空间之CIE2000色差公式
- Linux命令之nohup和重定向
- apache2.4多站点配置
- 【Python52--爬虫1】
- ZOJ 1007:Numerical Summation of a Series(数学)
- 如何玩转小程序+公众号?手把手教你JeeWx小程序CMS与公众号关联
- JS作用域,作用域,作用链详解
- python 之socket
热门文章
- HTML5图片上传预览
- Android之怎样改变焦点状态【EditText】
- Qt开发环境的搭建
- [jzoj 4722] [NOIP2016提高A组模拟8.21] 跳楼机 解题报告 (spfa+同余)
- [poj3974] Palindrome 解题报告 (hash\manacher)
- .net core @Html 自定义属性中包含特殊符号解决
- 用pigz来加速解压tar.gz
- POJ 3368 线段树
- (转载) TextView使用一些小技巧
- 在 Microsoft Word 文档 中粘贴代码实现语法高亮的方法