当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 对象化JS之----文件上传客户端控制脚本

Javascript
一个简单的收缩菜单效果
HTML-CSS群中单选引发的“事件”
打开超链需要“确认”对话框的方法
用js实现网页上模仿桌面右键菜单
可以文本显示的公告栏的js代码
[原创]js与自动伸缩图片 自动缩小图片的多浏览器兼容的方法总结
极致之美:百行代码实现全新智能语言
表单(FORM)的一些实用效果代码
[原创]提供复制本站内容时出现,该文章转自等字样的js代码
javascript中巧用“闭包”实现程序的暂停执行功能
给网站上的广告“加速”显示的方法
[原创]jser必看的破解javascript各种加密的反向思维方法
用javascript代替marquee的滚动字幕效果代码
静态页面下用javascript操作ACCESS数据库(读增改删)的代码
[原创]由亿起发(eqifa.com)的页面发现顶部的http://16a.us/8.js想到的js解密
[原创]站长必须要知道的javascript广告代码
js defineSetter -给js的 "class"自动增加一个set的属性(方法)
Javascript & DHTML 实例编程(教程)(三)初级实例篇1—上传文件控件实例
WordPress 插件:CoolCode使用方法与下载
文档处理系列:随时更新

Javascript 中的 对象化JS之----文件上传客户端控制脚本


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-10   浏览: 307 ::
收藏到网摘: n/a

<SCRIPT LANGUAGE=javascript>
onload=function(){
 var lofile = new upfile();
}

function upfile(aoP){
    var loThis = document.createElement("SPAN");
 var lsuniqueID = loThis.uniqueID;
    loThis.innerHTML = '<select style="width:200"></select><button onclick="'+lsuniqueID+'.Del()">删除</button><span><span><input style="width:10" type="file" onpropertychange="'+lsuniqueID+'.Add(this)"></span></span>';
    if (aoP==null){
        document.body.appendChild(loThis);
    }else{
        aoP.appendChild(loThis);
    }
    var loSelect = loThis.children[0];
    var loFiles  = loThis.children[2];
 loThis.Add = function(aoFile){
  if ((aoFile==null)||(aoFile.value=="")) return;
  var loOpts = loSelect.options;
  var lsfilename = aoFile.value.substring(aoFile.value.lastIndexOf("\\")+1);
  loOpts[loOpts.length] = new Option(lsfilename,aoFile.uniqueID);
  loSelect.value = aoFile.uniqueID;
  aoFile.parentElement.style.display = "none";
  var loObj = document.createElement("span");
  loObj.innerHTML = '<input style="width:10" type="file" onpropertychange="'+lsuniqueID+'.Add(this)">';
  loFiles.insertBefore(loObj);
 }
 loThis.Del = function(){
  loEL = document.all(loSelect.value);
  if (loEL!=null){
   loEL = loEL.parentElement;
   loFiles.removeChild(loEL);
  }
  var loOpts = loSelect.options;
  if(loOpts!=null&&loOpts.length>0){
   loSel = loOpts[loSelect.selectedIndex]
   loOpts.removeChild(loSel);
  }
 }
 loThis.AddName = function(asName){
  if ((asName==null)||(asName=="")) return;
  var loOpts = loSelect.options;
  loOpts[loOpts.length] = new Option(asName,null);
 }
 loThis.getNames = function(){
  var loOpts = loSelect.options;
  var lxNames = new Array;
  for (var i=0; i<loOpts.length; i++){
   lxNames[lxNames.length] = loOpts[i].innerText;
  }
  return lxNames;
 }
 return loThis;
}
</SCRIPT>