/**
* ycshang
* 2007-03-02
*/
<script language="javascript">
function f_add(){
var node1 = document.getElementById("txt1");
node1.innerHTML += "<input type='file' name='' value=''>";
}
function f_delete(){
var node1 = document.getElementById("txt1");
var cnodes = node1.childNodes;
node1.removeChild(cnodes[cnodes.length-1]);
}
function f_getTBodyNode(){
return document.getElementById("tab_list").childNodes[0];
}
function f_getTrNode(eventNode){
if(eventNode==null){
return null;
}
var nodetr = eventNode.parentNode;
while(nodetr.nodeName.toLowerCase()!="tr"){
nodetr = nodetr.parentNode;
}
return nodetr;
}
function f_getTdNode(eventNode){
if(eventNode==null){
return null;
}
var nodetd = eventNode.parentNode;
while(nodetd.nodeName.toLowerCase()!="td"){
nodetd = nodetd.parentNode;
}
return nodetd;
}
function f_create_text_cell(txt){
var nodetd = document.createElement("td");
var nodetxt = document.createTextNode(txt);
nodetd.appendChild(nodetxt);
return nodetd;
}
function f_create_button_cell(func){
var nodetd = document.createElement("<td align=\"center\">");
var node1 = document.createElement("<input type=\"button\" value=\"删除\" onclick=\""+func+"()\">");
nodetd.appendChild(node1);
return nodetd;
}
function f_add_row(){
var node1 = f_getTBodyNode();
var nodetr = document.createElement("tr");
if(node1.rows.length==0){
nodetr.appendChild(f_create_text_cell("1"));
} else {
var i = 0;
var icells = node1.rows[0].cells.length;
for(i=0;i<icells-1;i++){
nodetr.appendChild(f_create_text_cell(i+1));
}
nodetr.appendChild(f_create_button_cell("f_delete_line"));
}
node1.appendChild(nodetr);
}
function f_delete_row(){
var node1 = f_getTBodyNode();
if(node1.rows.length>1){
node1.removeChild(node1.rows[node1.rows.length-1]);
}
}
function f_add_cell(){
var node1 = f_getTBodyNode();
if(node1.rows.length==0){
return;
}
var i = 0;
var j = 0;
var onerow = node1.rows[0];
var icells = onerow.cells.length;
var newcell = onerow.insertCell(icells-1);
newcell.align = "center";
newcell.innerHTML = "<input type=\"button\" value=\"删除\" onclick=\"f_delete_column()\">";
for(i=1;i<node1.rows.length;i++){
onerow = node1.rows[i];
icells = onerow.cells.length;
var newcell = onerow.insertCell(icells-1);
newcell.innerHTML = icells;
}
}
function f_delete_cell(){
var node1 = f_getTBodyNode();
if(node1.rows.length==0){
return;
}
var i = 0;
var j = 0;
for(i=0;i<node1.rows.length;i++){
var onerow = node1.rows[i];
if(onerow.cells.length<2){
return;
}
onerow.removeChild(onerow.cells[onerow.cells.length-2]);
}
}
function f_delete_line(){
var obj = window.event.srcElement;
var nodetr = f_getTrNode(obj);
var nodetab = nodetr.parentNode;
nodetab.removeChild(nodetr);
}
function f_delete_column(){
var nodetab = f_getTBodyNode();
var obj = window.event.srcElement;
var nodetd = f_getTdNode(obj);
var nodetr = f_getTrNode(obj);
var icindex = nodetd.cellIndex;
var irindex = nodetr.rowIndex;
var i = 0;
for(i=0;i<nodetab.rows.length;i++){
nodetr = nodetab.rows[i];
nodetr.deleteCell(icindex);
}
}
</script>
<body>
<div id="txt1"></div>
<br>
<input type="button" onclick="f_add()" value="增加">
<input type="button" onclick="f_delete()" value="删除">
<hr>
对于Table表单的操作:
<br>
<br>
<table id="tab_list" border="1" cellspacing="0" cellpadding="0" width="500">
<tr>
<td align="center"><input type="button" value="删除" onclick="f_delete_column()"></td>
<td align="center"><input type="button" value="删除" onclick="f_delete_column()"></td>
<td> </td>
</tr>
<tr>
<td>1</td>
<td>2</td>
<td align="center"><input type="button" value="删除" onclick="f_delete_line()"></td>
</tr>
</table>
<br>
<input type="button" onclick="f_add_row()" value="增加行">
<input type="button" onclick="f_delete_row()" value="删除行">
<input type="button" onclick="f_add_cell()" value="增加列">
<input type="button" onclick="f_delete_cell()" value="删除列">
<br>
<br>
</body>