如果列表是动态创建的,如何获取可选列表中项目的“id”?
<ul id="selectable">
<li id='1'>..</li>
.
.
<li...
</ul>
我试过var num = $('#selecable :selected').attr( "option" , 'id' );
但只得到 [object Object] ...
什么是正确的方法?
如果列表是动态创建的,如何获取可选列表中项目的“id”?
<ul id="selectable">
<li id='1'>..</li>
.
.
<li...
</ul>
我试过var num = $('#selecable :selected').attr( "option" , 'id' );
但只得到 [object Object] ...
什么是正确的方法?
更新:
为了完整起见,如果选择了一个元素,插件会ui-selected
向该元素添加一个类。因此,您可以通过以下方式获取当前选定元素的 ID:
$('#selectable .ui-selected').attr('id');
但请注意,可以选择多个元素。
每当您选择一个元素时, jQuery UI 可选插件都会调用一个回调,您只需提供它:
$("#selectable" ).selectable({
selected: function(event, ui) { ... }
});
也就是说,正如尼克已经提到的那样,ID 不能以数字开头。
:selected
仅适用于option
元素。
此版本不需要特定的类名。用于$(ui.selected).attr('id')
获取(最后一个)选定元素的 ID:
$( "#selectable" ).selectable({
selected: function(event, ui) {
alert( $(ui.selected).attr('id') );
}
});
所选 ID 的列表将是:编辑:更好的方法
$('#selectable').selectable(function(){
selected:function(){
var idlist = $(this).attr('id');
//do something with the list...of id's
}
});
jQuery('#selectable').selectable( function() {
selected: function(event, ui)
{
alert(ui.selected.id);
}
});
jQuery('#selectable').selectable(function(){
selected: function(event, ui)
{
jQuery(".ui-selected", this).each(function()
{
var objID=jQuery(this).attr("id");
});
}
});
检查这个..
$( ".ui-selected", this ).each(function() {
var index = $( "#selectable li" ).attr(id);
});
<script>
$(function () {
$("#selectable").selectable({
selected: function () {
var id = $(".ui-selected", this).attr("id");
//alert(id);
}
});
});