jQuery清除HTML表并插入新行

per*_*kss 1 html jquery replace html-table socket.io

我一直在搜寻,但是找不到有效的解决方案。

我有一个简单的HTML表:

<table id="myTable">
        <thead>
            <tr>
                <th>UserID</th>
                <th>Current Submissions</th>
            </tr>
        <tbody>
            <tr>
            </tr>
        </tbody>
        <thead>
    </table>
Run Code Online (Sandbox Code Playgroud)

使用socket.io,我将收到清除后要附加到表中的JSON数据。下面的代码只是删除表,不插入新数据?

<script>
    var socket = io();
    socket.on('totalsubmissions', function(msg) {
        $('#myTable').find('tbody').remove();
        // loop over each recevied in the object
        $.each(msg, function(k, v) {
            //display the key and value pair
            var myRow = "<tr><td>" + k + "</td><td>" + v + "</td></tr>";
            $('#myTable').find('tbody').append(myRow);
        });

    });
</script>
Run Code Online (Sandbox Code Playgroud)

我不正确地移走桌子了吗?

wf4*_*wf4 6

这行删除tbody

$('#myTable').find('tbody').remove();
Run Code Online (Sandbox Code Playgroud)

因此,当您到达这一行时:

$('#myTable').find('tbody').append(myRow);
Run Code Online (Sandbox Code Playgroud)

没有tbody找到。

更改:

$('#myTable').find('tbody').remove();
Run Code Online (Sandbox Code Playgroud)

至:

$('#myTable').find('tbody').empty();
Run Code Online (Sandbox Code Playgroud)