line 263:
--------------------
tt.type="button";
tt.value="取消编辑";
tt.onclick=cancelEdit;
... ...createElement之后,type属性只读(IE5之前)
另建议用insertRow()和insertCell()来插入新行和新列试试
--------------------
tt.type="button";
tt.value="取消编辑";
tt.onclick=cancelEdit;
... ...createElement之后,type属性只读(IE5之前)
另建议用insertRow()和insertCell()来插入新行和新列试试
解决方案 »
- 高手请进!十万火急! iframe跨域提交表单 后获取iframe的内容(访问拒绝) 已经几天了
- 大家总结下,自己目前的前端目录结构是怎么设计的,可以总结几个标准?
- 高手进来看看
- JQuery菜鸟提问
- JS传值到后台问题!!!!!!!!高手来!!
- 帮帮我!各位!!!(关于scroll)
- 入门请教?
- 为什么定义了变量,而使用这个变量时,提示这个变量没有定义?请问为何会有这样的提示。
- 怎样实现打开一个新页面后,浏览器后退扭就自动失效,限制用户不让其点击后退回上页?
- 能不能实现当页面第一次打开时,默认某个超级链接是被激活的?
- 如何获取TD里面的文本?
- 用FrontPage自带的脚本编辑器调试JavaScript时,设置了一个断点怎么停不住啊?
把t.appendChild(tt);移到后面就行了
// Create radio button object with value="First Choice" and then insert
// this element into the document hierarchy.
var newRadioButton = document.createElement("<INPUT TYPE='RADIO' NAME='RADIOTEST' VALUE='First Choice'>")
document.body.insertBefore(newRadioButton);
// Create radio button object with value="Second Choice" and then insert
// this element into the document hierarchy.
newRadioButton = document.createElement("<INPUT TYPE='RADIO' NAME='RADIOTEST' VALUE='Second Choice'>")
document.body.insertBefore(newRadioButton);
}
好像不行,在IE下点了插入没反应;
在firefox下,点取消编辑会出现异常
也不行,点插入没反应
<form action="?action=savebbb" method="post" style="text-align:center">
<fieldset>
<legend>管理员管理</legend>
<table id="bbb" style="margin:auto">
<tr>
<th>select</th>
<th>name</th>
<th>value</th>
<th>edit</th>
</tr>
<tr>
<td><input type="checkbox" /></td>
<td>n1</td>
<td>v1</td>
<td><input type="button" class="wsc_edit" /></td>
</tr>
<tr>
<td><input type="checkbox" /></td>
<td>n2</td>
<td>v2</td>
<td><input type="button" class="wsc_edit" /></td>
</tr>
</table>
<input type="button" id="bbb_selectAll" value="全选" />
<input type="button" id="bbb_selectReverse" value="反选" />
<input type="button" id="bbb_delete" value="删除" />
<input type="button" id="bbb_cancelDelete" value="取消删除" />
<input type="button" id="bbb_insert" value="插入" />
<hr />
<input type="submit" id="bbb_submit" value="提交修改" />
<input type="button" value="放弃修改" onclick="window.location.reload();" />
</fieldset>
</form>
<script type="text/javascript">
wsc_tableEdit(1,"bbb");
function wsc_tableEdit(nkeyColumn, tableId)
{
var keyColumn=nkeyColumn;
var tb=document.getElementById(tableId);
var fm=tb.parentNode;
var editingValues;
var editedRows;
var deletedRows=new Array();
var editingRow; function selectAll()
{
var t=tb.getElementsByTagName("input");
var cbs=new Array();
for(var i=0; i<t.length; i++)
{
if(t[i].type=="checkbox")
{
t[i].selected=false;
cbs[cbs.length]=t[i];
}
}
t=null;
for(i=0; i<cbs.length; i++)
cbs[i].checked=true;
return false;
} function selectReverse()
{
var t=tb.getElementsByTagName("input");
var cbs=new Array();
for(var i=0; i<t.length; i++)
{
if(t[i].type=="checkbox")
{
cbs[cbs.length]=t[i];
}
}
t=null;
for(i=0; i<cbs.length; i++)
{
if(cbs[i].checked)
cbs[i].checked=false;
else
cbs[i].checked=true;
}
return false;
} function adelete()
{
var t=tb.getElementsByTagName("input");
var cbs=new Array();
for(var i=0; i<t.length; i++)
{
if(t[i].type=="checkbox")
{
//t[i].selected=false;
cbs[cbs.length]=t[i];
}
}
t=null;
for(i=0; i<cbs.length; i++)
if(cbs[i].checked)
{
var row=cbs[i].parentNode.parentNode;
var tds=row.getElementsByTagName("td");
row.style.display="none";
deletedRows.push(row);
}
return false;
} function beginEdit()
{
endEdit();
editedRows=new Array();
editingValues=new Array();
var row=this.parentNode.parentNode;
editingRow=row;
var tds=row.getElementsByTagName("td");
clearChilds(tds[0]);
var t=document.createElement("input");
t.value="取消编辑";
t.type="button";
t.onclick=cancelEdit;
tds[0].appendChild(t);
for(var i=1; i<tds.length-1; i++)
{
var s=tds[i].childNodes[0].nodeValue;
clearChilds(tds[i]);
t=document.createElement("input");
t.type="text";
t.value=s;
tds[i].appendChild(t);
editingValues.push(s);
}
this.value="确定编辑";
this.onclick=endEdit;
} function cancelEdit()
{
var row=editingRow;
if(!row)
return;
var tds=row.getElementsByTagName("td");
clearChilds(tds[0]);
t=document.createElement("input");
t.type="checkbox";
t.checked=false;
tds[0].appendChild(t);
for(i=1; i<tds.length-1; i++)
{
var s=editingValues[i-1];
clearChilds(tds[i]);
t=document.createTextNode(s);
tds[i].appendChild(t);
}
tds[tds.length-1].childNodes[0].value="编辑";
tds[tds.length-1].childNodes[0].onclick=beginEdit;
editingRow=null;
} function endEdit()
{
var row=editingRow;
if(!row)
return;
var tds=row.getElementsByTagName("td");
clearChilds(tds[0]);
t=document.createElement("input");
t.type="checkbox";
t.checked=false;
tds[0].appendChild(t);
for(i=1; i<tds.length-1; i++)
{
var s=tds[i].childNodes[0].value;
clearChilds(tds[i]);
t=document.createTextNode(s);
tds[i].appendChild(t);
}
editedRows.push(row);
tds[tds.length-1].childNodes[0].value="编辑";
tds[tds.length-1].childNodes[0].onclick=beginEdit;
editingRow=null;
} function clearChilds(node)
{
var n=node.childNodes.length;
for(var i=n-1; i>=0; i--)
node.removeChild(node.childNodes[i]);
} function beforeSubmit()
{
endEdit(); var t=document.createElement("input");
t.type="hidden";
t.name=tableId +"_deletedRows"; if(deletedRows &&deletedRows.length)
for(var i=0; i<deletedRows.length; i++)
{
var row=deletedRows[i];
var tds=row.getElementsByTagName("td");
t.value+=tds[keyColumn].childNodes[0].nodeValue+",";
if(editedRows &&editedRows.length)
for(var j=0; j<editedRows.length; j++)
{
if(editedRows[i]==row)
{
alert(i);
editedRows.splice(i,1);
}
}
}
fm.appendChild(t); if(editedRows &&editedRows.length)
for(i=0; i<editedRows.length; i++)
{
row=editedRows[i];
tds=row.getElementsByTagName("td");
for(j=1; j<tds.length-1; j++)
{
t=document.createElement("input");
t.type="hidden";
t.name=tableId +"_" +i +"_" +j;
t.value=tds[j].childNodes[0].nodeValue;
fm.appendChild(t);
}
}
var inputs=fm.getElementsByTagName("input");
for(i=0; i<inputs.length; i++)
inputs[i].disabled=true;
return false;
} function cancelDelete()
{
for(var i=0; i<deletedRows.length; i++)
{
if(document.all)
deletedRows[i].style.display="block";
else
deletedRows[i].style.display="table-row";
}
deletedRows=new Array();
} function insert()
{
var row=tb.getElementsByTagName("tr")[0];
var n=row.getElementsByTagName("th").length;
row=document.createElement("tr");
for(var i=0; i<n; i++)
{
var t=document.createElement("td");
var tt;
if(i==0)
{
tt=document.createElement("<input type='button' value='cancel' onclick='cancelEdit' />");
// tt.type="button";
// tt.value="取消编辑";
// tt.onclick=cancelEdit;
}
else if(i==n-1)
{
tt=document.createElement("<input type='button' value='cancel' onclick='endEdit' />");
// tt.type="button";
// tt.value="确认编辑";
// tt.onclick=endEdit;
}
else
{
tt=document.createElement("<input type='text' />");
// tt.type="text";
}
t.appendChild(tt);
row.appendChild(t);
}
tb.appendChild(row);
} var t=fm.getElementsByTagName("input");
for(var i=0; i<t.length; i++)
{
if(t[i].className=="wsc_edit")
{
t[i].value="编辑";
t[i].onclick=beginEdit;
}
} document.getElementById(tableId+ "_selectAll").onclick= selectAll;
document.getElementById(tableId+ "_delete").onclick= adelete;
document.getElementById(tableId+ "_selectReverse").onclick= selectReverse;
document.getElementById(tableId+ "_cancelDelete").onclick= cancelDelete;
document.getElementById(tableId+ "_insert").onclick= insert;
fm.onsubmit= beforeSubmit;
}
</script>
{
var insertrow = tb.rows.length;
tb.insertRow(insertrow);
tb.rows(insertrow).insertCell();
tb.rows(insertrow).insertCell();
tb.rows(insertrow).insertCell();
tb.rows(insertrow).insertCell();
tb.rows(insertrow).cells(0).innerHTML =
'<td><input type="checkbox" /></td>';
tb.rows(insertrow).cells(1).innerHTML =
'<td>n1</td>';
tb.rows(insertrow).cells(2).innerHTML =
'<td>v1</td>';
tb.rows(insertrow).cells(3).innerHTML =
'<td><input type="button" class="wsc_edit" /></td>'; // 这个自己该吧。
var t=fm.getElementsByTagName("input");
for(var i=0; i<t.length; i++)
{
if(t[i].className=="wsc_edit")
{
t[i].value="编辑";
t[i].onclick=beginEdit;
}
}
/*
var row=tb.getElementsByTagName("tr")[0];
var n=row.getElementsByTagName("th").length;
row=document.createElement("tr");
for(var i=0; i<n; i++)
{
var t=document.createElement("td");
var tt;
if(i==0)
{
tt=document.createElement("<input type='button' value='cancel' onclick='cancelEdit' />");
// tt.type="button";
// tt.value="取消编辑";
// tt.onclick=cancelEdit;
}
else if(i==n-1)
{
tt=document.createElement("<input type='button' value='cancel' onclick='endEdit' />");
// tt.type="button";
// tt.value="确认编辑";
// tt.onclick=endEdit;
}
else
{
tt=document.createElement("<input type='text' />");
// tt.type="text";
}
t.appendChild(tt);
row.appendChild(t);
}
tb.appendChild(row);
*/
}