• 添加 移除 表格的例子


    为 #employeetable 的所有的 a 节点添加 Onclick 响应函数:
    * 1. 弹出确认对话框: 确定要删除 xx 的信息吗? xx 为当前 a 节点所在的 td 所在的 tr 的
    * 第一个 td 子节点的文本值, 且要去除前后空格
    * 2. 若点击 "确认" , 则删除 a 节点的所在的行

    注意:
    * 1. a 节点是一个超级链接, 可以在其 onclick 事件中通过返回 false, 来取消默认行为
    * 2. tr 的直接父节点为 tbody, 而不是 table
    * 3. 可以把去除前后空格的代码写成一个 trim(str) 函数.

    为 #addEmpButton 添加 onclick 响应函数:
    * 1. 获取 #name, #email, #salary 的文本框的值
    * 2. 利用 1 获取的文本值创建 3 个 td 节点, 在创建一个 tr 节点. 并把以上的 3 个 td
    * 节点价位 tr 节点的子节点
    <tr>
    <td>Tom</td>
    <td>tom@tom.com</td>
    <td>5000</td>
    </tr>
    * 3. 在创建一个 td 节点: <td><a href="deleteEmp?id=xxx">Delete</a></td>
    * 4. 把 3 创建的 td 也加为 tr 的子节点.
    * 5. 再把 tr 加为 #employeetable 的 tbody 子节点的子节点.
    * 6. 为新创建的 tr 的 a 子节点添加 Onclick 响应函数, 使其也具备删除的功能.

    function removeTr(aNoe){

    var trNode = aNoe.parentNode.parentNode;

    var textContent = trNode.getElementsByTagName("td")[0]
    .firstChild.nodeValue;
    textContent = trim(textContent);

    var flag = confirm("确定要删除" + textContent + "的信息吗?");
    if(flag){
    trNode.parentNode.removeChild(trNode);
    }

    return false;
    }
    1. a 节点是一个超级链接, 可以在其 onclick 事件中通过返回 false, 来取消默认行为
    var aNodes = document.getElementById("employeetable")
    .getElementsByTagName("a");
    for(var i = 0; i < aNodes.length; i++){
    aNodes[i].onclick = function(){
    removeTr(this);
    return false;
    }
    }

    document.getElementById("addEmpButton").onclick = function(){

    var nameVal = document.getElementById("name").value;
    var emailVal = document.getElementById("email").value;
    var salaryVal = document.getElementById("salary").value;

    var nameTd = document.createElement("td");
    nameTd.appendChild(document.createTextNode(nameVal));

    var emailTd = document.createElement("td");
    emailTd.appendChild(document.createTextNode(emailVal));

    var salaryTd = document.createElement("td");
    salaryTd.appendChild(document.createTextNode(salaryVal));

    var tr = document.createElement("tr");

    tr.appendChild(nameTd);
    tr.appendChild(emailTd);
    tr.appendChild(salaryTd);

    alert("aa");

    //<td><a href="deleteEmp?id=xxx">Delete</a></td>
    var aNode = document.createElement("a");
    aNode.href = "deleteEmp?id=xxx";
    aNode.appendChild(document.createTextNode("Delete"));
    var aTd = document.createElement("td");
    aTd.appendChild(aNode);

    tr.appendChild(aTd);

    aNode.onclick = function(){
    removeTr(this);
    return false;
    }

    document.getElementById("employeetable")
    .getElementsByTagName("tbody")[0]
    .appendChild(tr);

    //value: 用于获取 html 表单元素的值
    //alert(this.value); //
    //nodeValue: 用于获取文本节点的文本值.
    //alert(this.nodeValue); //null

    }

    function trim(str){
    var reg = /^s*|s*$/g;
    return str.replace(reg, "");
    }

  • 相关阅读:
    使用牛顿迭代法和二分法求解一个数的平方根(python语言实现)
    厄拉多塞筛法和普通方法求素数表(python实现)
    使用辗转相除法求两个数的最大公因数(python实现)
    我在博客园第一篇博文
    Linux安装maven
    MyBatis基础入门
    Maven的使用入门
    nginx的简单使用和使用nginx在windows上搭建tomcat集群
    后端程序员如何玩转AJAX
    Servlet3.0文件上传
  • 原文地址:https://www.cnblogs.com/yigexiaojiangshi/p/6178904.html
Copyright © 2020-2023  润新知