如何在content_tag_for元素上禁用jquery排序

时间:2012-06-28 00:11:16

标签: jquery ruby-on-rails jquery-ui

我正在使用jquery ui排序项目列表,如下所示:

%ul.nav.nav-tabs.nav-stacked#lineup{"data-update-url" => sort_lineups_url}
  - @pieces.each_with_index do |piece, index|
    = content_tag_for :li, piece do
      = link_to "#{(index + 1).to_s + ' - ' + piece.name}", '#'

jQuery ->
  $('#lineup').sortable(
    axis: 'y'
    update: ->
      $.post($(this).data('update-url'), $(this).sortable('serialize'))
  );
  $( "#not-sortable" ).disableSelection();

我想要做的是始终禁用@pieces中的第一项进行排序。但是,我无法弄清楚如何使用disableSelection()来做到这一点。请帮忙。

1 个答案:

答案 0 :(得分:0)

disableSelection仅保留文字不被选中;它不会阻止元素成为sortable。请参阅https://groups.google.com/forum/?fromgroups#!topic/jquery-ui/B2h_Ea4jo5I

实现此目标的最佳方法是使用cancel option

以下是一个示例 - http://jsfiddle.net/s6XTu/7/