用Javascript实现对HTML表格简单的增删查改

在网页制作的过程中,有时候需要对表格进行操作,下面是一个简易的表格操作方案:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>对表格操作</title>
<style type="text/css">
    *{
    padding:0px;
    margn:0px;
    }
    table#stuRecordTable{width:600px;margin:40px auto;text-align: center;}
    table#stuRecordTable tr{height:30px;}
</style>
<script type="text/javascript">
    function $(eleStr){
        switch(eleStr.substr(0,1)){
        case "#":
            return document.getElementById(eleStr.substr(1));
            break;
        case ".":
            return document.getElementsByClassName(eleStr.substr(1));
            break;
        case "_":
            return document.getElementsByName(eleStr.substr(1));
            break;
        default:
            return document.getElementsByTagName(eleStr);
        break;
        }
    }

    onload = function(){

        doOperator();       
    }

    function doOperator(){

        var updates =$(".update");
        var dels =$(".del");
        for (var i = 0; i < dels.length; i++) {
            dels[i].onclick =   function(){
                if(confirm("是否确定删除?")){  //提示是否删除
                    //var row = this.parentNode.parentNode; //取到tr对象
                    //row.parentNode.removeChild(row);  //移除tr
                    $("#stuRecordTable").deleteRow(this.parentNode.parentNode.rowIndex);
                }
            }
            updates[i].onclick = function(){
                var operatorCell = this.parentNode.parentNode.getElementsByTagName("td")[1]; //取到要操作的td对象
                //1.修改按钮上有两个功能:修改,确定修改
                if(this.value == "修改"){
                    this.value = "确定";
                    operatorCell.innerHTML ="<input value='"+operatorCell.innerHTML+"'/>";//把内容变成文本框
                    //做修改操作
                }else{
                    operatorCell.innerHTML =operatorCell.getElementsByTagName("input")[0].value;//把文本框变成内容
                    this.value = "修改";
                    //做确定修改
                }
            }
        }
    }
    function addRow(){
        var rs = $("#stuRecordTable").rows;  //table取到所有的行
        var insertR = $("#stuRecordTable").insertRow(rs.length-1); //给表格添加一行(不包单元格)
        //insertR.innerHTML = rs[1].innerHTML;    
        var c1 = insertR.insertCell(0);       
        c1.innerHTML = "yc" +Math.round(Math.random() * 101);
        var c2 = insertR.insertCell(1);
        c2.innerHTML = Math.round(Math.random() * 101);
        var c3 = insertR.insertCell(2);
        c3.innerHTML ='<input type="button" value="删除" class="del"/><input type="button" value="修改" class="update"/>';

        doOperator();

        var cs = rs[1].cells; //取到当前行的所有单元格
        //alert(cs[1].innerHTML);
    }
</script>
</head>
<body>
    <table id="stuRecordTable" border="1" cellpadding="0" cellspacing="0">
        <tr>
            <th>姓名</th> 
            <th>成绩</th>
            <th>编辑</th>
        </tr>
        <tr>
            <td>小明</td>
            <td>90</td>
            <td><input type="button" value="删除" class="del"/>
            <input type="button" value="修改" class="update"/></td>
        </tr>
        <tr>
            <td>小红</td>
            <td>80</td>
            <td><input type="button" value="删除" class="del"/>
            <input type="button" value="修改" class="update"/></td>
        </tr>
        <tr>
            <td colspan="3">
            <input type="button" value="添加" onclick="addRow()"/></td>
        </tr>
    </table>
</body>
</html>

这里写图片描述

结果描述:这里的删除是删除一行的数据,修改也是类似,下面的增加按钮点击后增加的一行新数据中也包含了删除和修改按钮。

基于HTML表格的数据增删查改分页查询是通过HTML、CSS、JavaScript等前端技术结合后端语言实现的一个功能强大的数据管理功能。在HTML中,我们可以通过<table>标签来创建表格,通过<tr>、<th>和<td>标签来创建表格行、表头和单元格。在数据增删查改方面,可以通过JavaScript实现客户端的交互和数据处理,也可以通过后端语言比如PHP来实现与数据库的交互。 数据的增加可以通过在表格最后一行添加一个“新增”按钮,点击按钮后可以弹出一个表单用于输入新数据,然后通过JavaScript将新数据插入到表格中,或者通过后端语言将新数据插入到数据库中并刷新表格。 数据的删除可以通过在每行数据后添加一个“删除”按钮,点击按钮后可以通过JavaScript提示用户确认是否删除,然后再从表格中删除对应的数据,或者通过后端语言删除数据库中对应的数据并刷新表格。 数据的查询可以通过在页面上添加搜索框,用户可以在搜索框中输入关键词,然后通过JavaScript过滤表格中的数据并展示符合条件的数据,或者通过后端语言从数据库中查询符合条件的数据并刷新表格。 数据的修改可以通过在每行数据后添加一个“编辑”按钮,点击按钮后可以弹出一个表单用于修改数据,然后通过JavaScript实现数据的修改并更新到表格中,或者通过后端语言修改数据库中对应的数据并刷新表格。 对于分页查询,可以通过JavaScript实现前端分页功能,也可以通过后端语言实现后端分页功能,从而实现大量数据的分页展示和查询。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值