zoukankan      html  css  js  c++  java
  • 可编辑表格

    jQueryEdit.html

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="UTF-8">
        <title>itcast.cn的JQuery示例:可以编辑的表格</title>
        <!--<link type="text/css" rel="stylesheet" href="css/edit.css" />-->
        <script type="text/javascript" src="../jslib/jquery-2.1.4.min.js"></script>
        <script type="text/javascript" src="../jslib/jqueryedit.js"></script>
    </head>
    <body>
    <!--一个最简单的表格.一行两列,我们需要让表格中的数据点击时可以修改-->
    <table border="1px">
        <tbody>
        <tr>
            <td>123123</td>
            <td>456456</td>
        </tr>
        </tbody>
    </table>
    </body>
    </html>

    jqueryedit.js

     1 //在页面装载时,让所有的td都拥有一个点击事件
     2 $(document).ready(function() {
     3     //找到所有的td节点
     4     var tds = $("td");
     5     //给所有的td节点增加点击事件
     6     tds.click(tdclick);
     7 });
     8 
     9 //td被点击的事件
    10 function tdclick() {
    11     //0.保存当前的td节点
    12     var td = $(this);
    13     //1.取出当前td中的文本内容保存起来
    14     var text = td.text();
    15     //2.清空td里面的内容
    16     td.html("");  //也可以用td.empty();
    17     //3.建立一个文本框,也就是input的元素节点
    18     var input = $("<input>");
    19     //4.设置文本框的值是保存起来的文本内容
    20     input.attr("value", text);
    21     //4.5让文本框可以响应键盘按下并弹起的事件,主要用于处理回车确认
    22     input.keyup(function(event) {
    23         //0.获取当前用户按下的键值
    24         //解决不同浏览器获取事件对象的差异
    25         var myEvent = event || window.event;
    26         var kcode = myEvent.keyCode;
    27         //1.判断是否是回车按下
    28         if (kcode == 13) {
    29             var inputnode = $(this);
    30             //2.保存当前文本框的内容
    31             var intputext = inputnode.val();
    32             //3.清空td里面的内容
    33             var tdNode = inputnode.parent();
    34             //4。将保存的文本框的内容填充到td中
    35             tdNode.html(intputext);
    36             //5.让td重新拥有点击事件
    37             tdNode.click(tdclick);
    38         }
    39     });
    40     //5.将文本框加入到td中
    41     td.append(input);  //也可以用input.appendTo(td)
    42 
    43     //5.5让文本框里面的文字被高亮选中
    44     //需要将jquery的对象转换成dom对象
    45     var inputdom = input.get(0);
    46     inputdom.select();
    47     //6.需要清除td上的点击事件
    48     td.unbind("click");
    49 }

    edit.css

    1 table {
    2     border-collapse: collapse;
    3     border: 1px solid black;
    4 }
  • 相关阅读:
    第十六章 课程总复习
    第四章 数据类型及数据库基本操作
    第二章.图形化管理工具
    第十三章 指导学习:人机猜拳
    洛谷 P4396 (离散化+莫队+树状数组)
    洛谷 P1351 (枚举)
    洛谷P5322 (BJOI 2019) DP
    P3376 网络最大流模板(Dinic + dfs多路增广优化 + 炸点优化 + 当前弧优化)
    洛谷 P2176(最短路)
    HDU 6556 (2018CCPC吉林 B题)
  • 原文地址:https://www.cnblogs.com/sherrykid/p/4574512.html
Copyright © 2011-2022 走看看