当前位置: 首页 > 图文教程 > 网络编程 > Javascript > JavaScript实现动态增加文件域表单

Javascript
一个短小精悍使用的对象化QQ菜单
用数据岛生成翻页程序
轻松实现删除确认
IE5中用JavaScript跨frame加option问题
IE6无提示关闭窗口,不是利用activeX
下拉框联动
用dhtml做了一个密码管理器
面向对象的JavaScript编程
网 络 病 毒 与 防 范 措 施
破解网页禁止鼠标右键的技巧
JS编写的俄罗斯方块
通过代码改变客户端所显示的语言类型
欢迎精灵
事件处理函数OnEnter OnExit 使用一例
称三次从12球中找出唯一但不知轻重的球
VML实现的饼图(JavaScript类封装)
搜索gb2312汉字在网上的频率
真正的 用JS 做的 loading
Vml:应用阿基米德算法在网页制作动画,原程+注释
贴一例:当所有图片下载完毕时,然后显示网页(有进度)

Javascript 中的 JavaScript实现动态增加文件域表单


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

对于上传多个文件,可以通过js来动态生成文件域,下面是源代码,收藏在这里,供以后直接使用,hoho! js代码:
复制代码 代码如下:

<script language="javascript">
//全局变量,代表文件域的个数,并用该变量区分文件域的name属性
var file_count = 0;
//增加文件 域
function additem(id) {
if (file_count > 9) {
alert("最u22810 10个u25991 件u22495 ");
return;
}
//定义行变量row;单元格变量cell;单元格内容变量str。
var row,cell,str;
//在指定id的table中插入一行
row = eval("document.all["+'"'+id+'"'+"]").insertRow();
if(row != null ) {
//设置行的背景颜色
row.bgColor="white";
//在行中插入单元格
cell = row.insertCell();
//设置str的值,包括一个文件域和一个删除按钮
str='<input onselectstart="return false" class="tf" onpaste="return false" type="file" name="file[' + file_count + ']" style="width:500px" onkeydown="return false;"/>';
str += " <input type="+'"'+"button"+'"'+" value="+'"'+"删除"+'"'+" onclick='deleteitem(this,"+'"'+"tb"+'"'+");'>";
//文件域个数增加
file_count++;
//设置单元格的innerHTML为str的内容
cell.innerHTML=str;
}
}
//删除文件域
function deleteitem(obj,id) {
var rowNum,curRow;
curRow = obj.parentNode.parentNode;
rowNum = eval("document.all."+id).rows.length - 1;
eval("document.all["+'"'+id+'"'+"]").deleteRow(curRow.rowIndex);
file_count--;
}
</script>

html代码:
复制代码 代码如下:

<input type=button value="增加" onclick='additem("tb")'/><br/>
<table cellspacing="0" id="tb" style="width:400px">
</table>