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>");
}
}
OnClientClick知识+一个上传的例子的更多相关文章
- 【Spring Boot】关于上传文件例子的剖析
目录 Spring Boot 上传文件 功能实现 增加ControllerFileUploadController 增加ServiceStorageService 增加一个Thymeleaf页面 修改 ...
- 以一个上传文件的例子来说 DistributedFileSystem
public class UploadAndDown { public static void main(String[] args) { UploadAndDown uploadAndDown = ...
- php文件上传的例子
1.上传表单 upload.html 程序代码 [html] view plaincopy <form enctype="multipart/form-data" actio ...
- 关于自定义一个上传的file按钮
在input中html给我们一个 type file用来做文件上传的功能,比如 但是这样的样式,实在难看,在开发的时候看了layui和bootstrap的点击上传,都很不错. 前者的调用方式和js的 ...
- ASP.net 能写一个上传整个文件夹的东东(msdn)
IE的自带下载功能中没有断点续传功能,要实现断点续传功能,需要用到HTTP协议中鲜为人知的几个响应头和请求头. 一. 两个必要响应头Accept-Ranges.ETag 客户端每次提交下载请求时,服务 ...
- ASP.net 能写一个上传整个文件夹的东东
IE的自带下载功能中没有断点续传功能,要实现断点续传功能,需要用到HTTP协议中鲜为人知的几个响应头和请求头. 一. 两个必要响应头Accept-Ranges.ETag 客户端每次提交下载请求时,服务 ...
- [moka同学代码]PHP初级知识:上传文件源码
1.目录结构
- 一个上传EXCEL导入示例
REPORT ZTEST_UPEXCEL. data: gt_table type TABLE OF SFLIGHT, gs_table like line of gt_table. DATA:lt_ ...
- JS组件系列——自己封装一个上传文件组件
页面调用: $('#fileUpload').cemsUpload({ errorEmpty:'<s:text name="cupgrade.view.tip.upload.file. ...
随机推荐
- poj1363——Rails
Description There is a famous railway station in PopPush City. Country there is incredibly hilly. Th ...
- zzulioj--1634--Happy Thanksgiving Day - A + B Problem(模拟水题)
1634: Happy Thanksgiving Day - A + B Problem Time Limit: 1 Sec Memory Limit: 128 MB Submit: 136 ...
- 大家都能看懂的 canvas基础教程
原文链接: http://www.shitu91.com/cms/canvasSub/index.html 01.canvas简单的认识 canvas 是html5提供给我们的一个绘图标签 默认大小 ...
- Java8 方法引用与构造器引用,数组引用
package java_8; import org.junit.Test; import java.io.PrintStream; import java.util.Comparator; impo ...
- 15-11-24 system同步与异步
//打开关闭qq #define _CRT_SECURE_N0_WARNINGS #define _CRT_SECURE_NO_WARNINGS #include<stdlib.h> #i ...
- hihocoder1415 重复旋律3
思路: 扫一遍height 判一下即可 //By SiriusRen #include <cstdio> #include <cstring> #include <alg ...
- POJ 2188线段树求逆序对
题目给的输入是大坑,算法倒是很简单-- 输入的是绳子的编号wire ID,而不是上(或下)挂钩对应下(或上)挂钩的编号. 所以要转换编号,转换成挂钩的顺序,然后再求逆序数. 知道了这个以后直接乱搞就可 ...
- Ajax :六个全局事件
加载请求: .ajaxStart() 和 .ajaxstop() $(document).ajaxStart(function(){ $('.loading').show(); }).ajaxStop ...
- DF标志和串传送指令
DF标志和串传送指令 flag的第10位是DF,方向标志位.在串处理指令中,控制si.di的递减. df = 0 每次操作后si.di递增 df = 1 每次操作后si.di递减 串传送指令 格式1: ...
- hiho1560 - 矩阵快速幂
题目链接 坑死了,以为是K进制数,每一位可以是0-K之间的,其实是十进制,每一位最高为9,一直wa在这....... ----------------------------------------- ...