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

Javascript
玩透弹出窗口
几个常用的日期函数
简单的脚本帮你编排JScript程序中的缩进
得到 words.js?hello,world! 参数的处理方法
如何在javascript中传值
可输入的select
IE支持的HTML元素的DISABLE属性在NETSCAPE4.76中的实现
利用xml数据岛实现多级关联下拉选择框的做法
利用Wipe等ActiveX技术,实现n(n>>2)幅图片轮换擦洗显示
Javascript技术实现真正的网上试听
JavaScript实现在线编辑表格
根据客户端的分辨率不同而重定向到不同网页的脚本
几种不刷新页面取数据的方法
web进度条
随手写的一个动态添加删除行的HTC行为组件
农历与阳历的对照
关于在页面中解决打印的几个问题
"打开,另存为,属性,打印"等14个JS代码
无提示框关闭IE窗口
实现上传(增删)多个文件的客户端写法。

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-10   浏览: 162 ::
收藏到网摘: 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>