XXC203 2023-01-29 12:55 采纳率: 54.5%
浏览 25
已结题

浏览器没报错但是没有想要的效果

点击Delete后,删除员工信息
浏览器没报错,但是不实现对应的功能

<script type="text/javascript">
            
                window.onland = function(){
                
                            
                           //获取所有超链接
                           var allA = document.getElementsByTagName("a");
                          
                           //为每一个超链接都绑定一个单击响应函数
                           for(var i=0;i<allA.length;i++){
                            allA[i].onclick = function(){
                
                                var tr = this.parentNode.parentNode;
                
                                //获取要删除的员工的名字
                                var name = tr.getElementByTagName("td")[0].innerHTML;
                
                                //删除之前弹出提示框
                              var flag = confirm("确认删除"+name+"吗?");
                               if(flag){
                                //删除tr
                                tr.parentNode.removeChild(tr);
                               }
                               
                              return false;
                            };
                           }
                        };
            
        </script>

<body>
    <table id="employeeTable">
        <tr>
            <th>Name</th>
            <th>Email</th>
            <th>Salary</th>
            <th>&nbsp;</th>
        </tr>
        <tr>
            <td>Tom</td>
            <td>tom@tom.com</td>
            <td>5000</td>
            <td><a href="javascript:;">Delete</a></td>
        </tr>
        <tr>
            <td>Jerry</td>
            <td>jerry@soho.com</td>
            <td>8000</td>
            <td><a href="deleteEmp?id=002">Delete</a></td>
        </tr>
        <tr>
            <td>Bob</td>
            <td>Bob@soho.com</td>
            <td>6000</td>
            <td><a href="deleteEmp?id=003">Delete</a></td>
        </tr>
    </table>
   
</body>

获取所有的a标签后,写了return false但是还是会跳转,
把第一个a标签修改成href="javascript:;"后不跳转了,但是点击后没有反应
点删除后,应该弹出 确认删除 的提示框,点击确认后再删除员工信息

  • 写回答

3条回答 默认 最新

  • 有一只小精灵 2023-01-29 13:21
    关注

    问题1:
    onload写错了, window.onland 改成 window.onload
    问题2:
    tr.getElementByTagName写错了,改成 tr.getElementsByTagName
    最终代码(改了下格式):

    <!DOCTYPE html>
    <html>
    
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    
    <body>
        <table id="employeeTable">
            <tr>
                <th>Name</th>
                <th>Email</th>
                <th>Salary</th>
                <th>&nbsp;</th>
            </tr>
            <tr>
                <td>Tom</td>
                <td>tom@tom.com</td>
                <td>5000</td>
                <td><a href="javascript:;">Delete</a></td>
            </tr>
            <tr>
                <td>Jerry</td>
                <td>jerry@soho.com</td>
                <td>8000</td>
                <td><a href="deleteEmp?id=002">Delete</a></td>
            </tr>
            <tr>
                <td>Bob</td>
                <td>Bob@soho.com</td>
                <td>6000</td>
                <td><a href="deleteEmp?id=003">Delete</a></td>
            </tr>
        </table>
    
    </body>
    <script type="text/javascript">
        window.onload = function () {
            //获取所有超链接
            var allA = document.getElementsByTagName("a");
            //为每一个超链接都绑定一个单击响应函数
            for (var i = 0; i < allA.length; i++) {
                console.log(allA[i])
                allA[i].onclick = function () {
                    var tr = this.parentNode.parentNode;
                    //获取要删除的员工的名字
                    var name = tr.getElementsByTagName("td")[0].innerHTML;
                    //删除之前弹出提示框
                    var flag = confirm("确认删除" + name + "吗?");
                    if (flag) {
                        //删除tr
                        tr.parentNode.removeChild(tr);
                    }
                    return false;
                };
            }
        };
    
    </script>
    
    </html>
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 2月6日
  • 已采纳回答 1月29日
  • 修改了问题 1月29日
  • 创建了问题 1月29日

悬赏问题

  • ¥15 关于温度改变石墨烯介电性能(关键词-介电常数)
  • ¥150 HDMI分路器LT86102 的输出在890MHz频点处EMC超标8DB
  • ¥15 druid(相关搜索:数据库|防火墙)
  • ¥15 大一python作业
  • ¥15 preLaunchTask"C/C++: aarch64- apple-darwin22-g++-14 生成活动 文件”已终止,退出代码为-1。
  • ¥60 如何鉴定微信小程序数据被篡改过
  • ¥18 关于#贝叶斯概率#的问题:这篇文章中利用em算法求出了对数似然值作为概率表参数,然后进行概率表计算,这个概率表是怎样计算的呀
  • ¥20 C#上传XML格式数据
  • ¥15 elementui上传结合oss接口断点续传,现在只差停止上传和继续上传,各大精英看下
  • ¥20 手机截图相片分辨率降低一半