2013-05-03 3 views
0

У меня есть выборный список в пределах аккордеона, и когда вы выбираете элемент из списка, этот элемент появляется в списке выбранных столбцов. Моя проблема в том, что я хочу использовать дескриптор для выбора элемента (дескриптор - знак плюса) и текст появляется в выбранном списке.jQuery выбирается с помощью ручки и сортировки

Вот моя скрипка: 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(); 
    }); 

ответ

0

Чтобы поставить значение в выбранном списке, я должен был получить индекс удерживающий знак плюс, то с помощью этот индекс получает значения текста и идентификатора li с тем же индексом. Затем я смог покрасить этот зеленый цвет, указав, что он выбран, и добавьте его в список.

Вот скрипка: 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>'); 
      }      
    }); 
Смежные вопросы