日期:2014-05-16  浏览次数:20479 次

仿照163的动态添加和删除上传附件
现在可以实现动态的添加和删除了,而且把添加进来的东西方在一个id为"sss"的table中了。接下来想把添加进来的文件路径传到处理页面。于是想利用js遍历这个table中的所有这些路径,并把得到路径以分号隔开形成一个字符串,之后再赋给一个隐藏的id为"upload"text域传出去。
想法是有了,但是不知道怎么写代码,希望得到帮助,非常感谢!!

------解决方案--------------------
- -!又是你。。。

var a=document.getElementsByName("sss");//遍历你所有ID名叫sss的元素。
var b=document.getElementById("file");
for(var i=0; i<a.length; i++){
b.value+=a[i].innerHTML;
}

本来是应该好像以下那样做的,但问题是你存到那些sss的table里,你要把什么东西加到那个隐藏的input里啊,table里面的内容是<tr><td>....</td></tr>啊,把这些都提交?如果是的话以上的就OK了。
------解决方案--------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>New Document</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2900.2995" name=GENERATOR>
<META content="" name=Author>
<META content="" name=Keywords>
<META content="" name=Description>
<SCRIPT>
function addTableRow() {
var table = document.getElementById("tb");
var pos = table.rows.length;
var newRow = table.insertRow(pos);
var cell1 = newRow.insertCell(0);
cell1.innerHTML = "<input type = 'file' name = 'test'>";
cell1.align="center";
}
function getStrings() {
var str ="";
var test ;
test = document.getElementsByName("test");
for(i=0;i < test.length;i++){
str = str + test[i].value+";"
}
alert(str);
}
</SCRIPT>
</HEAD>
<BODY>
<form>
<TABLE id=tb border=1>
<TBODY>
<TR>
<TD><input type = 'file' name = 'test'> </TD>
</TR></TBODY></TABLE></form><INPUT onclick=addTableRow() type=button value=继续添加> 
<input type = 'button' value = '提交' onclick = 'getStrings()'>
</BODY></HTML>