JS制作可编辑表格

本文介绍了一种通过双击表格单元格实现编辑的功能,并利用Ajax技术实现在同一页面上更新数据的方法。此功能适用于需要频繁修改数据的场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

 

<html>
<head>
<title></title>

</head>

<body>
    
<table id="editTable" border="1">
        
<tr>
            
<td>aaaaaaa</td>
            
<td>bbbbbbb</td>
            
<td>ccccccc</td>
        
</tr>
        
<tr>
            
<td>ddddddd</td>
            
<td>eeeeeee</td>
            
<td>fffffff</td>
        
</tr>
        
<tr>
            
<td>gggggggg</td>
            
<td>hhhhhhhh</td>
            
<td>iiiiiiii</td>
        
</tr>
    
</table>
</body>
</html>

<script>


  

    
//dom创建文本框
    
    
var input = document.createElement("input");
    input.type
="text" ;
    
  
     
    
//得到当前的单元格
    var currentCell ; 
    
function editCell(event)
    
{
        
if(event==null)
       
{
            currentCell
=window.event.srcElement;
        }

        
else
        
{
            currentCell
=event.target;
        }

        
//根据Dimmacro 的建议修定下面的bug 非常感谢
        if(currentCell.tagName=="TD"){

        
//用单元格的值来填充文本框的值
        input.value=currentCell.innerHTML;
             
//当文本框丢失焦点时调用last
        input.onblur=last;
        input.ondblclick
=last;
        currentCell.innerHTML
="";
        
//把文本框加到当前单元格上.
        currentCell.appendChild(input);
           
//根据liu_binq63 的建议修定下面的bug 非常感谢
        input.focus();

        }


    }

    
    
function last()
    
{
        
//充文本框的值给当前单元格
        currentCell.innerHTML = input.value;
    }

  
    



    
//最后为表格绑定处理方法.
    document.getElementById("editTable").ondblclick=editCell;

</script>

 

双击表格的单元格后出现一个文本框,用户编辑完成后将用户添的值重新给这个单元格。该功能结合Ajax 可以

同一个页面上完成对数据的修改功能,非常实用。

 

评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值