博主信息
博文 35
粉丝 0
评论 0
访问量 31171
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
购物车的删除与编辑功能--2019年5月14日22时05分
白守的博客
原创
803人浏览过

 

实例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        /*表格与单元素添加边框*/
        table, th, td {
            border: 1px solid black;
        }
        /*设置表格样式, 折叠边框线并设置宽度*/
        table {
            border-collapse: collapse;
            width: 600px;
        }

        /*设置标题行背景*/
        table thead tr:first-of-type {
            background-color: lightblue;
        }

        /*选择每一行的第一列*/
        table tr td:first-of-type {
            text-align: center;
        }
    </style>
</head>
<body>
        <table>
                <caption>购物车</caption>
                <thead>
                    <tr>
                        <th style="width: 30px;"><input type="checkbox" id="all"></th>
                        <th>商品</th>
                        <th>操作</th>
                    </tr>
                </thead>
            
            
                <tbody>
                    <tr>
                        <td><input type="checkbox" name="user-select"></td>
                        <td>华为HUAWEI MateBook 14 全面屏轻薄性能笔记本电脑</td>
                        <td><button>编辑</button> <button onclick="del(this)">删除</button></td>
                    </tr>
                    <tr>
                        <td><input type="checkbox" name="user-select"></td>
                        <td>联想(Lenovo)拯救者Y7000英特尔酷睿i5 15.6英寸游戏笔记本电脑</td>
                        <td><button>编辑</button> <button onclick="del(this)">删除</button></td>
                    </tr>
                    <tr>
                        <td><input type="checkbox" name="user-select"></td>
                        <td>小米 (MI)Ruby 2019款 15.6英寸金属轻薄笔记本电脑</td>
                        <td><button>编辑</button> <button onclick="del(this)">删除</button></td>
                    </tr>
                    <tr>
                        <td><input type="checkbox" name="user-select"></td>
                        <td>Apple Macbook Pro 13.3[带触控栏]深空灰 </td>
                        <td><button>编辑</button> <button onclick="del(this)">删除</button></td>
                    </tr>
                </tbody>
            </table>
            <button id="del-all" disabled>全部删除</button>
    <script>
        // 先获取全部选择框
    var all = document.getElementById('all');
    // 获取商品列表选择框
    var ch = document.getElementsByName('user-select');
    // 获取全部删除按钮
    var sc = document.getElementById('del-all');
// 给全选复选框, 通过input事件, 添加全选功能
    all.addEventListener('input',getall,false);
    

    // 全选事件触发函数
    function getall(){
        // 调试一下看看选中全部选择按钮有没有返回true
        console.log(all.checked);
        if(all.checked === true){
            Object.keys(ch).forEach(function(key){
                ch[key].checked = true;
            });
        // 全部删除按钮有效
        sc.disabled = false;

        }else{
            Object.keys(ch).forEach(function(key){
                ch[key].checked = false;
            });
                            // 全部删除按钮无效
                            sc.disabled = true;
        }


        }

    // 全部删除功能
    sc.addEventListener('click',sc,false);

    function sc(){
        if(confirm('真的删除吗?')){
            // 获取tbody
            var tbody =document.getElementsByTagName('table')[0].tBodies[0];
             // 将tbody
            tbody.innerHTML = '';
            // 全部删除按钮无效
            sc.disabled = true;
            // 全选按钮还原
            all.checked = false
        }
    }

    var tbody = document.getElementsByTagName('table')[0].tBodies[0];
    function del(ele) {
        if (confirm('是否删除?')) {
            // ele.parentElement: <td>
            // ele.parentElement.parentElement: <tr>
            tbody.removeChild(ele.parentElement.parentElement);
        }
    }


    function edit(ele) {
        // 要编辑的内容位于当前按钮的父元素的前一个兄弟元素
        var td = ele.parentElement.previousElementSibling;
        // 获取原始的内容
        var oldContent = td.innerHTML;
        // 设置编辑对话框, 确定会返回第二个参数值的内容, 取消会返回null
        var newContent = prompt('请输入要更新的内容', oldContent);
        console.log(newContent); // 测试
        // 如果返回值不等于null, 说明用户点击了确定按钮
        if (newContent !== null) {
            // 更新内容
            td.innerHTML = newContent;
        } else {
            // 如果返回 null, 什么也不做,返回
            return false;
        }
    }
    </script>
</body>
</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例

批改状态:未批改

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学