2

我有以下带有 jquery tablesorter 增强的表:

<table>
    <thead>
        <tr>
            <th colspan="2">Name</th>
            <th>Value</th>
        </tr>
    </thead>

    <tbody>
        <tr>
            <td><input type="checkbox" name="london" value="1" /></td>
            <td>London</td>
            <td>124</td>
        </tr>
        <tr>
            <td><input type="checkbox" name="oslo" value="1" /></td>
            <td>Oslo</td>
            <td>66</td>
        </tr>
        <tr>
            <td><input type="checkbox" name="athens" value="1" /></td>
            <td>Athens</td>
            <td>87</td>
        </tr>
    </tbod>
</table>

我现在的问题是,如果我单击“名称”列标题,则表格未排序,因为 tablesorter 尝试对第一列进行排序,该列是每行中的复选框。

有没有办法告诉tablesorter,对第二列而不是第一列进行排序?

4

2 回答 2

0

我没有回答你的问题,但我可以告诉你替代方法。而不是使用 colspan="2",而是使用以下代码

<thead>
    <tr>
    <th style="display:none"></tr>
    <th>Name</th>
    <th>Value</th>
    </tr>
</thead>

希望它能解决你的问题。

于 2013-06-10T18:27:55.773 回答
0

我尝试了一些解决方案,但唯一对我有用的是在第一个 td 列中添加一个隐藏跨度,其中包含第二列的值:

<table>
    <thead>
        <tr>
            <th colspan="2">Name</th>
            <th>Value</th>
        </tr>
    </thead>

    <tbody>
        <tr>
            <td><span style="display: none;">London</span><input type="checkbox" name="london" value="1" /></td>
            <td>London</td>
            <td>124</td>
        </tr>
        <tr>
            <td><span style="display: none;">Oslo</span><input type="checkbox" name="oslo" value="1" /></td>
            <td>Oslo</td>
            <td>66</td>
        </tr>
        <tr>
            <td><span style="display: none;">Athens</span><input type="checkbox" name="athens" value="1" /></td>
            <td>Athens</td>
            <td>87</td>
        </tr>
    </tbod>
</table>
于 2013-06-11T08:21:16.190 回答