JQuery UI выбираемый получить идентификатор? - PullRequest
0 голосов
/ 24 мая 2010

Как я могу получить 'id' элемента в списке выбора, если список создается динамически?

  <ul id="selectable">
  <li id='1'>..</li>
      .
      .
      <li...
  </ul>

Я пытался var num = $('#selecable :selected').attr( "option" , 'id' );, но получаю только [объект объекта] ...

Каков правильный путь?

Ответы [ 7 ]

6 голосов
/ 24 мая 2010

Обновление:

Для полноты, если выбран элемент, плагин добавляет класс ui-selected к элементу. Таким образом, вы можете получить идентификатор текущего выбранного элемента через:

$('#selectable .ui-selected').attr('id');

Но имейте в виду, что можно выбрать несколько элементов.


Подключаемый модуль jQuery UI вызывает обратный вызов всякий раз, когда вы выбираете элемент , вам просто нужно предоставить его:

$("#selectable" ).selectable({
   selected: function(event, ui) { ... }
});

При этом, как уже упоминал Ник, идентификаторы не могут начинаться с цифры.

:selected работает только на option элементах.

5 голосов
/ 21 ноября 2011

Эта версия не требует определенных имен классов. Используйте $(ui.selected).attr('id'), чтобы получить (последний) идентификатор выбранного элемента:

$( "#selectable" ).selectable({
    selected: function(event, ui) {
        alert( $(ui.selected).attr('id') );
    }
});
4 голосов
/ 24 мая 2010

Список выбранных идентификаторов будет: edit: лучше methinnks

$('#selectable').selectable(function(){
    selected:function(){ 
        var idlist = $(this).attr('id');
        //do something with the list...of id's
    }
});
0 голосов
/ 28 июня 2014
<script>
$(function () {
    $("#selectable").selectable({
        selected: function () {
            var id = $(".ui-selected", this).attr("id");
            //alert(id);
        }
    });
});

0 голосов
/ 07 января 2014

отметьте это ..

  $( ".ui-selected", this ).each(function() {
   var index = $( "#selectable li" ).attr(id);

    });
0 голосов
/ 05 июля 2012
jQuery('#selectable').selectable( function() {
    selected: function(event, ui)
    {
        alert(ui.selected.id);
    }
});
0 голосов
/ 26 июля 2011
jQuery('#selectable').selectable(function(){
    selected: function(event, ui)
    {
     jQuery(".ui-selected", this).each(function() 
     {
          var objID=jQuery(this).attr("id");
     });
    }
});
...