当前位置 : 主页 > 网页制作 > JQuery >

jquery说tbody.length = 1即使没有标签存在

来源:互联网 收集:自由互联 发布时间:2021-06-15
参见英文答案 Why do browsers insert tbody element into table elements?2个 我有一个非常简单的表,只有最少的html标签,例如: table id="test" trtdsome table cell/td/tr/table 我正在尝试检查标签是否存在.奇怪
参见英文答案 > Why do browsers insert tbody element into table elements?                                    2个
我有一个非常简单的表,只有最少的html标签,例如:

<table id="test">
    <tr><td>some table cell</td></tr>
</table>

我正在尝试检查标签是否存在.奇怪的是:jquery说“是的,有一个tbody标签”,即使我没有定义一个!这里发生了什么?

$('table#test').each(function(){

    var tbody = $(this).find('tbody');

    //how can there be a tbody when there is no <tbody> tag defined?
    console.log(tbody.length); //gives 1, should be 0 though as there is no tbody

});

使用jQuery 1.6.4在Chrome 28.0,Firefox 22.0中测试过(当前项目需要它,尽管它也发生在jQuery 2.0.2中)

这里也是一个jsFiddle:http://jsfiddle.net/nerdess/rH5Lf/

tbody在表格中自动添加,您可以通过右键单击并查看组件(Chrome开发人员工具)看到tbody在那里

<table id="test">
    <tbody>
        <tr>
            <td>some table cell</td>
        </tr>
    </tbody>
</table>
网友评论