如何在不可排序的单元素中生成单个元素(jquery ui)

时间:2012-12-28 12:15:40

标签: html jquery-ui jquery-ui-sortable

我有一张这样的表

<table>
  <tr class="sortable">
    <td>Days</td>
    <td>Monday</td>
    <td>Tuesday</td>
    <td>Wednesday</td>
    <td>Thursday</td>
    <td>Friday</td>
    <td>Saturday</td>
  </tr>
  <tr class="sortable">
    <td>Works</td>
    <td>1</td>
    <td>2</td>
    <td>3</td>
    <td>4</td>
    <td>5</td>
    <td>6</td>
  </tr>
</table>

在此,我不希望<td>的“Days”和“Works”不能排序,而是保留在行中。

3 个答案:

答案 0 :(得分:1)

将行标题<th>设为原样,并仅包含<td>个元素。

<table>
  <tr class="sortable">
    <th>Days</th>
    <td>Monday</td>
     ...

​$( '​​​​.sortable' ).sortable({
    items: 'td'
});​​​​​

演示:http://jsfiddle.net/Xugru/

答案 1 :(得分:0)

您可以使用cancel选项:

$('.sortable').sortable({
    cancel: 'td:first'
});

这是docs

答案 2 :(得分:0)

<table>
  <tr class="sortable">
    <td>Days</td>
    <td>Monday</td>
    <td>Tuesday</td>
    <td>Wednesday</td>
    <td>Thursday</td>
    <td>Friday</td>
    <td>Saturday</td>
  </tr>
  <tr class="sortable">
    <td>Works</td>
    <td>1</td>
    <td>2</td>
    <td>3</td>
    <td>4</td>
    <td>5</td>
    <td>6</td>
  </tr>
</table>

让列ID不可排序。

$(".sortable").sortable({
 items: "td:not(:first)"
});

这就是全部。您只需要排除项目中的第一个td。

度过美好的一天