执行table的deleteRow方法,为什么当<a>对象作为参数的,被默认为了0

<!DOCTYPE html>

<html>

 <head>

  <title> new document </title>  

  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>   

  <script type="text/javascript"> 

     // 创建删除函数

     function jian(row){

         var node=document.getElementById("table");

         node.deleteRow(row);

     }

  </script> 

 </head> 

 <body> 

       <table border="1" width="50%" id="table">

       <tr>

        <th>学号</th>

        <th>姓名</th>

        <th>操作</th>

       </tr>  


       <tr>

        <td>xh001</td>

        <td>王小明</td>

        <td><a href="javascript:;" onclick="jian(this)">删除</a></td>   <!--在删除按钮上添加点击事件  -->

       </tr>


       <tr>

        <td>xh002</td>

        <td>刘小芳</td>

        <td><a href="javascript:;" onclick="jian(this)">删除</a></td>   <!--在删除按钮上添加点击事件  -->

       </tr>  


       </table>

 </body>

</html>

为什么this被当成了0来执行,而不是报编译错误,求指教啊求指教!!

拉风的咖菲猫
浏览 581回答 1
1回答

慕的地6264312

deleteRow语法tableObject.deleteRow(index)前端要学的东西太多,不要纠结于一些小问题,用什么东西就按照规范来用啊,这里要的是index,是一个数字你就给它传一个数字呗function&nbsp;jian(row){ &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;node=document.getElementById("table");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;node.deleteRow(row.parentNode.parentNode.rowIndex); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}注意你这里的this是a元素并不是行tr
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript