Combine $(this) and $("li:eq(ui.item.index())")

Combine $(this) and $("li:eq(ui.item.index())")

本文关键字:quot ui item index eq li this Combine and      更新时间:2023-09-26

使用jQuery,如何将$(this)$("li:eq(ui.item.index())")组合为类似$(this).$("li:eq(ui.item.index())").id的内容?

我正试图在用jQueryUI工具包创建的可排序列表中获取列表元素的id属性

$(".sections-list").sortable({ /* Update position of sortable elements */
    start: function(event, ui) {
        var start   = ui.item.index();
        var section = $("li:eq(start)").id;
        alert(section);
    }
});

假设您要做的是在this下面找到一个特定的索引li项目,您可以这样做:

$(this).find("li").eq(ui.item.index()).attr("id")

您还可以将this作为第二个参数传递给$(),指示搜索的上下文:

$('li:eq('+start+')',this).attr('id')

如果要查找的元素是$(this)对象的后代,则可以使用jQuery的.find()函数。

$(this).find("li:eq("+ui.item.index()+")").id

如果您要查找的元素是$(this)的兄弟元素,那么您可以使用.siblings()函数来查找它们-

$(this).siblings("li:eq("+ui.item.index()+")").id

参考-

  • find()
  • siblings()
$(this).find(selector);  

find选择器获取您的初始jquery并在其中再次搜索

点击此处阅读更多信息:http://api.jquery.com/find/