Jquery動態修改表格

//相當於在頁面中的body標籤加上onload事件
$(function(){
    //找到所有的td節點
    //var tds=$("td"); 
    //var tds = $("#mytable [id=mytr] td:mytd1");
    //var tds = $("#mytable [id=mytr] td:mytd2");
    //var tds = $("table[mytable]").find("td");
    var tds = $("#mytable").find("td");
    //給所有的td添加點擊事件
    tds.click(function(){
        //獲得當前點擊的對象
        var td=$(this);
        //取出當前td的文本內容保存起來
        var oldText=td.text();
        //建立一個文本框,設置文本框的值爲保存的值  
        var input=$("<input type='text' value='"+oldText+"'/>");
        //將當前td對象內容設置爲input
        td.html(input);
        //設置文本框的點擊事件失效
        input.click(function(){
            return false;
        });
        //設置文本框的樣式
        input.css("border-width","0");             
        input.css("font-size","16px");
        input.css("text-align","center");
        //設置文本框寬度等於td的寬度
        input.width(td.width());
        //當文本框得到焦點時觸發全選事件 
        input.trigger("focus").trigger("select");
        //當文本框失去焦點時重新變爲文本
        input.blur(function(){
            var input_blur=$(this);
            //保存當前文本框的內容
            var newText=input_blur.val();
            td.html(newText);
        });
        //響應鍵盤事件
        input.keyup(function(event){
            // 獲取鍵值
            var keyEvent=event || window.event;
            var key=keyEvent.keyCode;
            //獲得當前對象
            var input_blur=$(this);
            switch(key)
            {
                case 13://按下回車鍵,保存當前文本框的內容
                    var newText=input_blur.val();
                    td.html(newText);
                break;
               
                case 27://按下esc鍵,取消修改,把文本框變成文本
                    td.html(oldText);
                break;
            }
        });
    });
});

 測試的html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>JQuery實現可編輯的表格</title>
    <script src="js/jquery.js" type="text/javascript"></script>
    <script src="js/EditTable.js" type="text/javascript"></script>
    <script language="javascript" type="text/javascript">
        function disabletable(){
            document.getElementById("txt").disabled = true;
        }
    </script>
</head>
<body>
    <table border="1">
        <tr>
            <td >123546789</td>
            <td>987654321</td>
        </tr>
    </table>
    <table id="mytable" border="1">
        <tr>
            <td >asdasdasdasd</td>
            <td >ssssssssssss</td>
        </tr>
    </table>
</body>
</html>

 

轉自http://blog.csdn.net/syzhangzhinan/article/details/6326090

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章