jQuery可选择句柄和可排序

时间:2013-05-03 14:59:55

标签: jquery-ui-sortable jquery-ui-selectable

我在手风琴中有一个可选择的列表,当您从列表中选择一个项目时,该项目将显示在您选择的列列表中。我的问题是我想使用句柄来选择一个项目(句柄是加号)并让文本出现在所选列表中。

这是我的小提琴:http://jsfiddle.net/kmbonin82/NkgC2/16/

如您所见,当您单击加号时,它不会将文本放在所选项目列表中。有关如何纠正此问题的任何想法?

这是应该将文本放入选定列列表的JS:

 $(function () {
       $(".list div") 
       .selectable({
           handle: ".handle",
           stop: function () {

               var result = $("#select-result");                       

               $(".ui-selected", this).each(function () {
                   var index = $(".list li").index(this);                    
                   $(this).css('background-color', '#669966');
                   $(this).css('color', '#FFFFFF');
                   result.append('<li id="' + $(this).attr('id')  + '">' + $(this).text() + '</li>');
                   sortColumns();
               });
           }
       })           
      sortColumns();
   });

1 个答案:

答案 0 :(得分:0)

要将值放在所选列表中,我必须得到保持加号的索引,然后使用该索引,获取具有相同索引的li的text和id值。然后,我就可以为那个绿色着色,表明它被选中并将其添加到列表中。

这是小提琴:http://jsfiddle.net/kmbonin82/NkgC2/17/

$("ul li div").click(function () {
         var index = $("ul li div").index(this);
         var listLiText = $("ul.list li").eq(index).text();
          var listLiID = $("ul.list li").eq(index).attr('id');

          $("ul.list li").eq(index).css('background-color', '#669966');
          $("ul.list li").eq(index).css('color', '#FFFFFF');

           if ($("#select-result #" + listLiID).length == 0) {
                 result.append('<li id="' + listLiID + '">' + listLiText + '</li>');
            }                      
  });