<table id=tab1> <tr> <td>asdf</td> <td>sdf</td> <td>sdf sdaf</td> </tr> <tr> <td>adf dsf</td> <td>sadf </td> <td>sdf</td> </tr> <tr> <td>sadf</td> <td>sdf</td> <td> dsfsdf</td> </tr> </table> <button onclick="makeArray()"> make array </button> <script language="JavaScript"> <!-- function makeArray(){ var ar = new Array(); for(var i=0; i<tab1.rows.length;i++){ ar[ar.length] = new Array(); var row = tab1.rows[i]; for(var j=0; j<row.cells.length;j++){ ar[ar.length-1][j] = row.cells[j].innerText; } } alert("array contents:"); for(var i=0; i<ar.length;i++){ alert(ar[i]); } } //--> </script>
呵呵. 这样或许更直观点. 表格其实就是一个二维数组而已....^_^<table id=tab1> <tr> <td>asdf</td> <td>sdf</td> <td>sdf sdaf</td> </tr> <tr> <td>adf dsf</td> <td>sadf </td> <td>sdf</td> </tr> <tr> <td>sadf</td> <td>sdf</td> <td> dsfsdf</td> </tr> </table> <button onclick="makeArray()"> make array </button> <div style="background:green;color:yellow" id=output></div> <script language="JavaScript"> function makeArray(){ var row=tab1.rows.length,cel=tab1.rows[0].cells.length; var ar = new Array(),k=new Array();for(i=0; i<row;i++){ ar[i] = new Array(); for(j=0;j<cel;j++){ ar[i][j] = tab1.rows[i].cells[j].innerText; } k[i]=ar[i].join("|"); } output.innerText=k.join("\n"); } </script>
建议不要提交到另外一个页面, 这样的话你要传多少个参数? 不是很明白你想要干什么,如果是一个动态表格的话应该是从一个数组里面生成一个表格吧, 下面是一个动态生成行的程序//table是要插入的表的id,td为一个array,是所有的td的值 function insertRow(table,tdArray) { var tbl=document.all(table); if(!tbl) { alert("table is null"); return; } var i; var tr=tbl.insertRow(); var td; for(i=0;i<tdArray.length;i++) { td=tr.insertCell(); td.innerHTML=tdArray[i]; } }
我要的是实现一个动态表格;
也就是说,
在我输入内容以后(内容实例如上)能够放到一个数组中;然后我把它提交到一个页面中去进行处理
谢谢annkie(爱已成歌)的回答;我想要实际的代码,
<tr>
<td>asdf</td>
<td>sdf</td>
<td>sdf sdaf</td>
</tr>
<tr>
<td>adf dsf</td>
<td>sadf </td>
<td>sdf</td>
</tr>
<tr>
<td>sadf</td>
<td>sdf</td>
<td> dsfsdf</td>
</tr>
</table>
<button onclick="makeArray()"> make array </button>
<script language="JavaScript">
<!--
function makeArray(){
var ar = new Array();
for(var i=0; i<tab1.rows.length;i++){
ar[ar.length] = new Array();
var row = tab1.rows[i];
for(var j=0; j<row.cells.length;j++){
ar[ar.length-1][j] = row.cells[j].innerText;
}
}
alert("array contents:");
for(var i=0; i<ar.length;i++){
alert(ar[i]);
}
}
//-->
</script>
<tr>
<td>asdf</td>
<td>sdf</td>
<td>sdf sdaf</td>
</tr>
<tr>
<td>adf dsf</td>
<td>sadf </td>
<td>sdf</td>
</tr>
<tr>
<td>sadf</td>
<td>sdf</td>
<td> dsfsdf</td>
</tr>
</table>
<button onclick="makeArray()"> make array </button>
<div style="background:green;color:yellow" id=output></div>
<script language="JavaScript">
function makeArray(){
var row=tab1.rows.length,cel=tab1.rows[0].cells.length;
var ar = new Array(),k=new Array();for(i=0; i<row;i++){
ar[i] = new Array();
for(j=0;j<cel;j++){
ar[i][j] = tab1.rows[i].cells[j].innerText;
}
k[i]=ar[i].join("|");
}
output.innerText=k.join("\n");
}
</script>
这样的话你要传多少个参数?
不是很明白你想要干什么,如果是一个动态表格的话应该是从一个数组里面生成一个表格吧,
下面是一个动态生成行的程序//table是要插入的表的id,td为一个array,是所有的td的值
function insertRow(table,tdArray)
{
var tbl=document.all(table);
if(!tbl)
{
alert("table is null");
return;
}
var i;
var tr=tbl.insertRow();
var td;
for(i=0;i<tdArray.length;i++)
{
td=tr.insertCell();
td.innerHTML=tdArray[i];
}
}