2010-12-17 97 views

回答

28

包装你<tr>的在<tbody>和你的代码更改为:

$("table tbody").sortable({ 
    handle: 'td:first' 
}).disableSelection(); 

您指定包含要为可排序而不是实际的元素元素的容器......

+0

完美!!!!它从表'FIRST'列开始排序,因此您可以轻松选择列文本。不要忘记删除.disableSelection()选项。 – 2016-06-17 21:56:31

1

尝试传递一个元素:http://jsfiddle.net/22C2n/5/

$("table tr").sortable({ 
    handle: $("td:eq(0)") 
}).disableSelection(); 
+0

感谢您的答案,但代码不起作用,在铬在leas。 – Diego 2010-12-17 14:58:25

+1

你不能移动1A?它工作在我的铬;-) – 2010-12-17 15:01:16

+0

是的,我试着用6A。但仍然,1B和1C(也就是你放弃后的1A)移动到右边。它也不是排序 – Diego 2010-12-17 15:10:13

0

手柄设置为td:eq(0)使得仅所述第一表细胞可排序,其余的细胞都不是。尝试在td内添加span,并将其用作手柄(demo)。

HTML

<table> 
    <tr> 
     <td><span>&bull;</span>1A</td> 
     <td>1B</td> 
     <td>1C</td> 
    </tr> 
    ... 
</table> 

脚本

$("table tr").sortable({ 
    handle: "span" 
}).disableSelection();