1、用javascript判断上传文件的大小
第一种方法:是应用ActiveX控件的实现,例如:
<script type="text/javascript">
function getFileSize(filePath){
var fso = new ActiveXObject("Scripting.FileSystemObject");
alert("文件大小为:"+fso.GetFile(filePath).size);
}
</script>
<body>
<INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this.value);">
</body>
这种方法可以实现,也容易被开发人员想到,但是唯一不足之处是有安全提示,当然把文件名改为.hta则会屏蔽掉安全提示,但很难被需求所取。不推荐,也不多说 .
第二种方法:在html标签中有一个不为一般开发人员“深”知的img标签,先来说下他有的属性:src,dynsrc,start,alt,controls,loop,loopdelay,hspace,vspace....还有一些常用的属性就不列出来了,在这里我们说一下"dynsrc"这个属性:dynsrc可以用来插入各种多媒体,格式可以是Wav、Avi、AIFF、AU、MP3、Ra、Ram等等。url为音频或视频文件及其路径,可以是相对路径或绝对路径。
示例:<img dynsrc="xxxx.mp3">
这样我们就可以根据dynsrc动态赋值任何类型文件的路径,在javascript中根据Image对象本身的fileSize属性来得到文件的大小。当然Image对象还有其他的几个属性,例如:fileCreatedDate、fileModifiedDate、fileSize、fileUpdatedDate、filters... , 代码如下:
<script type="text/javascript">
function getFileSize(filePath) {
var image=new Image();
image.dynsrc=filePath;
alert(image.fileSize);
}
</script>
<body>
<INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this.value)">
</body>
经测试,得到文件大小,并未出现安全提示,推荐,没的说
本文来自: IT知道网(http://www.itwis.com) 详细出处参考:http://www.itwis.com/html/programme/javascript/20090903/5956.html
2、js复选框全选功能
<script>
/** 全选、取消全选 @author tanxm*/
var checkFlag = true;
function chooseAll(checkboxName) {
var checkboxObj = document.getElementsByName(checkboxName);
if (checkFlag) { //全选
for (var i = 0; i < checkboxObj.length; i++) {
if (checkboxObj[i] != null) {
checkboxObj[i].checked = true;
}
}
checkFlag = false;
} else { //取消全选
for (var i = 0; i < checkboxObj.length; i++) {
if (checkboxObj[i] != null) {
checkboxObj[i].checked = false;
}
}
checkFlag = true;
}
}
</script>
jsp部分:
<c:forEach items="${personList}" var="free">
<tr>
<td width="30%" bgcolor="#ffffff" class="STYLE6"><div align="right"><span class="STYLE10">
<input type="checkbox" style= "width:100px" id=checkAry name="checkAry" value="${free.personID}"/>
</span></div></td>
</tr>
</c:forEach>
<input type="checkbox" onclick="chooseAll('checkAry')" value="全选"/>
3. js 获取时间
window.onload = function(){ //页面加载时出发的事件
displayTime1();
}
function displayTime1(){
var today = new Date(); // 定义日期对象
var hear = today.getFullYear();
var months = today.getMonth()+1;
var days = today.getDate();
var hours = today.getHours();
var minutes = today.getMinutes();
var seconds = today.getSeconds();
// 从日期对象中中获得时间信息
minutes = fixTime(minutes);
seconds = fixTime(seconds); // 引入fixTime()函数,使分和秒可以正常显示,对于小于10的数字则在该数字前加一个0
//将时间字符串组合在一起并写出
var the_time =hear+"年"+months+"月"+days+"日 ";
document.getElementById("liveTime1").innerHTML = the_time; //把表格的值重新写一遍,相当于刷新时间
}
function fixTime(the_time){
if (the_time <10){
the_time = "0" + the_time;
}
return the_time;
}
jsp页面: <tr><td>当前时间: <div id="liveTime1" class="timetitle" align="left" ></div>
</td></t>
4、js获取客户端和服务器端的时间
5、 js 输入域中输入小写字母 转换成大写字母
function toUpper(obj){
obj.value= obj.value.toUpperCase();
}
jsp页面:
<tr><td> <lable>航班号</lable>
<td><input type="text" name="flightId" id="flightId" onkeyup="toUpper(this)"/></td>
</tr>
6、 js 刷新页面:
window.onload = function(){
flush();
}
//定时刷新界面 每三分钟刷新一次
function flush(){
window.setTimeout( "window.location.reload() ",1000 * 60 * 3);
}
7、js的应用
var apName = document.getElementById("apName").value;
var arrPieTitle = '<%=Title%>'+pointName+' '+'<%=arr%>';
var arrFlight = new Array();
var i = 0;
var arrPieFlightData = '<%=arrFlightSizeData%>';//arrFlightSizeData是一个字符串 格式 为:'34','25','56','76'
var depPieNameData = [<%=depPieXnameData%>];//['东航','国航','南航'] 数组形式 这里的depPieXnameData=='东航','国航','南航'
arrFlight = arrPieFlightData.split(",");
for(i=0;i<depPieNameData.length;i++){
if(depPieNameData[i]==pointName){
break;
}
}
var Title = arrPieTitle + arrFlight[i];