如何转置HTML表格?

时间:2014-07-23 13:37:54

标签: javascript jquery html-table

有没有办法(我不知道正确的话)用jQuery扭曲表格?有功能还是什么?

例如,我有一个这样的表:

<table>
    <tr>
        <th></th>
        <th></th>
        <th></th>
    </tr>
    <tr>
        <td></td>
        <td></td>
        <td></td>
    </tr>
</table>

Table1

我想要这样:

<table>
    <tr>
        <th></th>
        <td></td>
    </tr>
    <tr>
        <th></th>
        <td></td>
    </tr>
    <tr>
        <th></th>
        <td></td>
    </tr>
</table>

enter image description here

1 个答案:

答案 0 :(得分:4)

试试这段代码

<style>
td { padding:5px; border:1px solid #ccc;}
</style>
<script>
$("a").click(function(){
    $("table").each(function() {
        var $this = $(this);
        var newrows = [];
        $this.find("tr").each(function(){
            var i = 0;
            $(this).find("td").each(function(){
                i++;
                if(newrows[i] === undefined) { newrows[i] = $("<tr></tr>"); }
                newrows[i].append($(this));
            });
        });
        $this.find("tr").remove();
        $.each(newrows, function(){
            $this.append(this);
        });
    });

    return false;
});

</script>
<table>
    <tr>
        <td>Heading1</td>
        <td>Heading2</td>
        <td>Heading3</td>
    </tr>

    <tr>
        <td>data</td>
        <td>data</td>
        <td>data</td>
    </tr>
</table>


<p><a href="#">Do it.</a></p>

不要忘记链接必要(jquery1.6)文件和相应的html标记。

尝试提供链接http://jsfiddle.net/CsgK9/2/

请参阅原始视图的此链接 https://stackoverflow.com/a/6298066