JS制作可编辑表格

 

 

< 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 可以

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

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 11
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值