Javascript jQuery正在删除错误的表列

Javascript jQuery正在删除错误的表列,javascript,jquery,html,Javascript,Jquery,Html,我一直试图通过引用此网站删除html表的第一列: 但当我点击它时,我表格的第二列被删除了。第二次单击时,第三列将被删除。再点击一下,什么也没发生。下面你可以查看我的html和javascript,这很简单,但我对结果感到困惑 <html> <head> <script src="http://code.jquery.com/jquery-1.11.0.min.js"></script> <script&

我一直试图通过引用此网站删除html表的第一列:

但当我点击它时,我表格的第二列被删除了。第二次单击时,第三列将被删除。再点击一下,什么也没发生。下面你可以查看我的html和javascript,这很简单,但我对结果感到困惑

<html>
    <head>
        <script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
        <script>

            function deleteFirstColumn(){
                //$('table tr').find('td:eq(1),th:eq(1)').remove();

                //remove the 1st column
                $('table tr').find('td:eq(1),th:eq(1)').remove();

                //remove the 2nd column
                //$('table tr').find('td:eq(1),th:eq(1)').remove();
            }
        </script>

    </head>

    <body>

        <button type="button" onclick="deleteFirstColumn()"> delete first column</button>

        <table border="1">
            <tr>
                <td>column 1</td>
                <td>column 2</td>
                <td>column 3</td>
            </tr>

            <tr>
                <td>c 1</td>
                <td>c 2</td>
                <td>c 3</td>
            </tr>

            <tr>
                <td>c 1</td>
                <td>c 2</td>
                <td>c 3</td>
            </tr>
        </table>
    </body>
</html>

函数deleteFirstColumn(){
//$('table tr').find('td:eq(1),th:eq(1)').remove();
//拆下第1列
$('table tr').find('td:eq(1),th:eq(1)').remove();
//拆下第2列
//$('table tr').find('td:eq(1),th:eq(1)').remove();
}
删除第一列
第1栏
第2栏
第3栏
C1
C2
C3
C1
C2
C3

这是正确的,因为JavaScript中的索引以
0开始:

$('table tr').find('td:eq(0),th:eq(0)').remove();  // remove 1st column
每次单击后,jQuery选择器都会从表中剩余的内容中找到第一列,因此单击3次后,您将从表中删除所有列。

使用基于
零的索引。换言之,在使用该函数时,我们考虑的下限是<代码> 0 < /代码>,

试试看


既然JavaScript中的索引以0开头,那么第n个孩子的索引呢?@RajaprabhuAravindasamy这不是JavaScript。读入:因为jQuery对
:n-
选择器的实现严格源自CSS规范,
n
的值是“1-索引的”,这意味着计数从1开始。好的,:eq是jQuery制作的选择器。。我只是在那一点上感到困惑。
 $('table tr').find('td:eq(0),th:eq(0)').remove();