我单击单元格修改任意单元格的值,并存储,该如何做呢,把代码copy 到html中就能直接运行(c#)
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<META http-equiv="Content-Style-Type" content="text/css"> </head>
<body >
<div id="movediv" style="background-color:#ffeeff;position:absolute;width:100px;height:20px;z-index:5">点击编辑</div>
<TABLE id = "tb2" width = "100%" cellSpacing="0" borderColorDark="black" cellPadding="1" borderColorLight="black" border="1" style="position:absolute;left:50px;z-index:1" align ="center">
<tr>
<td align="center">项目 </td>
<td align="center">单位 </td>
<td align="center">数量 </td>
<td align="center">备 注 </td>
</tr>
<tr>
<td align="center">供水平均温度 </td>
<td align="center"> <font face="宋体">℃ </font> </td>
<td exp="AverData(15,1)" align="center" > </td>
<td align="center"> </td>
</tr>
<tr>
<td align="center">回水平均温度 </td>
<td align="center"> <font face="宋体">℃ </font> </td>
<td exp="AverData(15,2)" align="center" > </td>
<td align="center"> </td>
</tr>
<tr>
<td align="center">温差 </td>
<td align="center"> <font face="宋体">℃ </font> </td>
<td exp="AverData(15,1)-AverData(15,2)" align="center" > </td>
<td align="center"> </td>
</tr> </TABLE>
<script>
//获取单元格
document.onclick = function(e)
{
e = window.event || e;
e = e.srcElement || e.target;
if( e.tagName && e.tagName.toLowerCase() == "td" )
alert("行号:" + e.parentNode.rowIndex + "\n" + "列号:" + e.cellIndex);
}
//显示层
var TH_HEIGHT="20px";
var lastObj;
window.onload=function()
{
var tb=document.getElementById("tb2");
for(var i=0;i<tb.rows.length;i++)
{
for(var j=0;j<tb.rows[i].cells.length;j++)
{
tb.rows[i].cells[j].onclick=alertMe
}
} }
function alertMe()
{
var event=window.event||arguments[0]
var obj=event.srcElement||event.target;
if(lastObj == obj) return false;
lastObj = obj;
document.getElementById("movediv").style.left=obj.offsetLeft+15;
document.getElementById("movediv").style.top=obj.offsetTop;
// document.getElementById("movediv").innerHTML=obj.innerHTML
}
//编辑层
var obj1=document.getElementById("movediv");
var temp_info=obj1.innerHTML;
obj1.onclick=function()
{
obj1.innerHTML="";
var temp_text = document.createElement("input");
temp_text.id="test";
temp_text.value=temp_info.replace(/\r\n?/, "\n");
obj1.appendChild(temp_text);
var temp_btn = document.createElement("input");
temp_btn.type="button";
temp_btn.value="保存";
temp_btn.onclick=function()
{
obj1.innerHTML=document.getElementById("test").value;
}
obj1.appendChild(temp_btn);
}
</script>
</body>
</html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<META http-equiv="Content-Style-Type" content="text/css"> </head>
<body >
<div id="movediv" style="background-color:#ffeeff;position:absolute;width:100px;height:20px;z-index:5">点击编辑</div>
<TABLE id = "tb2" width = "100%" cellSpacing="0" borderColorDark="black" cellPadding="1" borderColorLight="black" border="1" style="position:absolute;left:50px;z-index:1" align ="center">
<tr>
<td align="center">项目 </td>
<td align="center">单位 </td>
<td align="center">数量 </td>
<td align="center">备 注 </td>
</tr>
<tr>
<td align="center">供水平均温度 </td>
<td align="center"> <font face="宋体">℃ </font> </td>
<td exp="AverData(15,1)" align="center" > </td>
<td align="center"> </td>
</tr>
<tr>
<td align="center">回水平均温度 </td>
<td align="center"> <font face="宋体">℃ </font> </td>
<td exp="AverData(15,2)" align="center" > </td>
<td align="center"> </td>
</tr>
<tr>
<td align="center">温差 </td>
<td align="center"> <font face="宋体">℃ </font> </td>
<td exp="AverData(15,1)-AverData(15,2)" align="center" > </td>
<td align="center"> </td>
</tr> </TABLE>
<script>
//获取单元格
document.onclick = function(e)
{
e = window.event || e;
e = e.srcElement || e.target;
if( e.tagName && e.tagName.toLowerCase() == "td" )
alert("行号:" + e.parentNode.rowIndex + "\n" + "列号:" + e.cellIndex);
}
//显示层
var TH_HEIGHT="20px";
var lastObj;
window.onload=function()
{
var tb=document.getElementById("tb2");
for(var i=0;i<tb.rows.length;i++)
{
for(var j=0;j<tb.rows[i].cells.length;j++)
{
tb.rows[i].cells[j].onclick=alertMe
}
} }
function alertMe()
{
var event=window.event||arguments[0]
var obj=event.srcElement||event.target;
if(lastObj == obj) return false;
lastObj = obj;
document.getElementById("movediv").style.left=obj.offsetLeft+15;
document.getElementById("movediv").style.top=obj.offsetTop;
// document.getElementById("movediv").innerHTML=obj.innerHTML
}
//编辑层
var obj1=document.getElementById("movediv");
var temp_info=obj1.innerHTML;
obj1.onclick=function()
{
obj1.innerHTML="";
var temp_text = document.createElement("input");
temp_text.id="test";
temp_text.value=temp_info.replace(/\r\n?/, "\n");
obj1.appendChild(temp_text);
var temp_btn = document.createElement("input");
temp_btn.type="button";
temp_btn.value="保存";
temp_btn.onclick=function()
{
obj1.innerHTML=document.getElementById("test").value;
}
obj1.appendChild(temp_btn);
}
</script>
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<META http-equiv="Content-Style-Type" content="text/css"> </head>
<body >
<div id="movediv" style="background-color:#ffeeff;position:absolute;width:100px;height:20px;z-index:5">点击编辑 </div>
<TABLE id = "tb2" width = "100%" cellSpacing="0" borderColorDark="black" cellPadding="1" borderColorLight="black" border="1" style="position:absolute;left:50px;z-index:1" align ="center">
<tr>
<td align="center">项目 </td>
<td align="center">单位 </td>
<td align="center">数量 </td>
<td align="center">备 注 </td>
</tr>
<tr>
<td align="center">供水平均温度 </td>
<td align="center"> <font face="宋体">℃ </font> </td>
<td exp="AverData(15,1)" align="center" > </td>
<td align="center"> </td>
</tr>
<tr>
<td align="center">回水平均温度 </td>
<td align="center"> <font face="宋体">℃ </font> </td>
<td exp="AverData(15,2)" align="center" > </td>
<td align="center"> </td>
</tr>
<tr>
<td align="center">温差 </td>
<td align="center"> <font face="宋体">℃ </font> </td>
<td exp="AverData(15,1)-AverData(15,2)" align="center" > </td>
<td align="center"> </td>
</tr>
</TABLE>
<script>
//获取单元格
document.onclick = function(e)
{
e = window.event || e;
e = e.srcElement || e.target;
if( e.tagName && e.tagName.toLowerCase() == "td" );
// alert("行号:" + e.parentNode.rowIndex + "\n" + "列号:" + e.cellIndex);
} //显示层
var TH_HEIGHT="20px"; var lastObj;
window.onload=function()
{ var tb=document.getElementById("tb2");
for(var i=0;i <tb.rows.length;i++)
{
for(var j=0;j <tb.rows[i].cells.length;j++)
{
tb.rows[i].cells[j].onclick=alertMe
}
} }
function alertMe()
{
var event=window.event||arguments[0] var obj=event.srcElement||event.target; if(lastObj == obj) return false; lastObj = obj;
document.getElementById("movediv").style.left=obj.offsetLeft+15;
document.getElementById("movediv").style.top=obj.offsetTop;
// document.getElementById("movediv").innerHTML=obj.innerHTML }
//编辑层
var obj1=document.getElementById("movediv");
var temp_info=obj1.innerHTML;
obj1.onclick=function()
{
obj1.innerHTML=""; var temp_text = document.createElement("input");
temp_text.id="test";
temp_text.value=temp_info.replace(/\r\n?/, "\n");
obj1.appendChild(temp_text); var temp_btn = document.createElement("input");
temp_btn.type="button";
temp_btn.value="保存";
temp_btn.onclick=function()
{
lastObj.innerHTML=document.getElementById("test").value;
}
obj1.appendChild(temp_btn);
} </script>
</body>
</html>
肯定得调用另外个程序文件asp / asp.net
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>test</title>
<style type="text/css">
input {
font-family: Geneva, Arial, Helvetica, sans-serif;
font-size: 12px;
color: #999999;
background-color: #FFFFE1;
border: 1px solid #999999;
}
</style>
</head>
<body>
<div id="mydiv"></div>
<table width="80%" border="1" bordercolorlight="#CCCCCC" bordercolordark="#FFFFFF" onclick="setEdit(event)" onkeydown="checkAdd(event)">
<tr>
<td width="20%">343</td>
<td width="20%">sdf</td>
<td width="20%">asdf</td>
<td width="20%">asf</td>
<td width="20%">35r32</td>
</tr>
<tr>
<td>111</td>
<td>222</td>
<td>333</td>
<td>444</td>
<td>555</td>
</tr>
<tr>
<td>adfdsf</td>
<td>adfdsf</td>
<td>adfsdf </td>
<td> dafssda</td>
<td> dafdsf</td>
</tr>
<tr>
<td>2342432</td>
<td>asdf</td>
<td> dfsasdfds</td>
<td>3243243</td>
<td>asdfasf</td>
</tr>
<tr>
<td>h</td>
<td>ghhhh</td>
<td>hhhh</td>
<td>ea</td>
<td>ghghhh</td>
</tr>
</table>
</body>
</html>
<script language="javascript">
oldObj="";
var newInput=document.createElement("input"); //雄怓斐膘怀遺
newInput.type="text"; //怀遺濬倰
function setEdit(e){ //扢离晤憮奀腔袨怓
var tdObj = e.srcElement? e.srcElement : (e.target ? e.target : e);//等僻腔勤砓
var obj;
if(tdObj.tagName && tdObj.tagName=="TD"){ //瓚剿岆瘁岆等啋跡
if(oldObj!=""){
var tobj = document.getElementById('tmpText');//瓚剿岆瘁眒冪湔婓怀遺
oldObj.removeChild(tobj); //痄壺眒冪湔婓腔怀遺
if(newInput.vlaue=="") //場宎趙怀遺腔硉
oldObj.innerHTML=" ";
else
oldObj.innerHTML=newInput.value; //怀遺腔囀脹衾等啋跡腔囀
} obj=tdObj;
oldObj=obj;
newInput.width=obj.offsetWidth; //怀遺腔詢僅睿遵僅
newInput.height=obj.offsetHeight; newInput.id="tmpText";
newInput.value=obj.innerHTML;
obj.innerHTML="";
obj.appendChild(newInput); //蔚怀遺氝樓善等啋跡囀
newInput.focus(); //怀遺鳳腕蝴萸
}
tdObj = obj = tobj = null;
}
function checkAdd(e){
if(e && e.keyCode == 13){ //
var obj = e.srcElement? e.srcElement : e.target; //鳳腕等僻勤砓
var tbl = obj.parentNode.parentNode; //等僻勤砓腔逌虜誹萸
if(oldObj!=""){
var tobj = document.getElementById('tmpText'); //鳳怀遺
oldObj.removeChild(tobj); //痄壺導怀遺
if(newInput.vlaue=="")
oldObj.innerHTML=" "; //等啋跡腔場宎硉
else
oldObj.innerHTML=newInput.value; //等啋跡腔囀脹衾怀遺腔囀
var oldObj2 = oldObj;
oldObj = '';
}
if(tbl.tagName && tbl.tagName == 'TR'){ //彆岆等啋俴
t2 = tbl.cloneNode(true); //親癒桶跡
tbl.parentNode.insertBefore(t2,tbl); //脣俴
}
setEdit(oldObj2); //羲宎晤憮
}
obj = tbl = tobj = t2 = oldObj2 = null;
}
</script>
</body>
</html>