Jquery UI手风琴问题-如果已删除下一个列表项,则自动展开下一个列表项

Jquery UI手风琴问题-如果已删除下一个列表项,则自动展开下一个列表项,jquery,jquery-ui,jquery-ui-accordion,Jquery,Jquery Ui,Jquery Ui Accordion,很抱歉标题含糊不清,但这是一个很难用一句话解释的问题 我有一个手风琴与几个列表项目和div展开时,每个列表项目是点击。我正在使用accordion和一些ajax功能,这些功能实际上在提交操作时删除列表项,但我不需要解释,最重要的是要知道,在页面的其他地方,用户可以删除accordion中的列表项 问题 删除活动列表项后,下一个列表项仍将折叠。我需要做的是,一旦上面的列表项被删除,下一个列表项就会自动展开 我看过jQueryUI文档,但似乎不知道如何实现这一点 代码 这是在手风琴中隐藏li的功能:

很抱歉标题含糊不清,但这是一个很难用一句话解释的问题

我有一个手风琴与几个列表项目和div展开时,每个列表项目是点击。我正在使用accordion和一些ajax功能,这些功能实际上在提交操作时删除列表项,但我不需要解释,最重要的是要知道,在页面的其他地方,用户可以删除accordion中的列表项

问题

删除活动列表项后,下一个列表项仍将折叠。我需要做的是,一旦上面的列表项被删除,下一个列表项就会自动展开

我看过jQueryUI文档,但似乎不知道如何实现这一点

代码

这是在手风琴中隐藏li的功能:

function hideMatchBox(boxId,sourceKey){
    $('#'+boxId).animate({height: 0},1000,function(){
        var allHidden = true;
        $('#manualMatches li').each(function(index){
            if($(this).height() > 0)    {
                allHidden = false; // -failsafe
            }           
        });
        if(allHidden){
            $('#manualMatches').html('<p>All records are matched for your service.</p>');
        }
    });
}
函数hideMatchBox(boxId,sourceKey){
$('#'+boxId).animate({height:0},1000,function(){
var-allHidden=true;
$('#manualMatches li')。每个(函数(索引){
如果($(this).height()>0){
allHidden=false;//-故障保护
}           
});
如果(全部隐藏){
$(“#manualMatches').html(“所有记录都与您的服务相匹配。

”); } }); }
因此,我需要做的是告诉手风琴“重新加载”,并在这个hideMatchBox函数运行后,从顶部li展开第二个

其中一个问题是,无法保证李的顺序会被隐藏,所以我实际上认为最好完全删除李,而不是隐藏它?或者将隐藏的li移动到列表的底部,然后展开第一个li

希望这更有意义!很难提供一个例子,但如果需要,我会的

任何帮助都将不胜感激

感谢您在“删除”功能中添加如下内容:

var NextIndex = $(this).closest('.div').next();
$('#yourAccordian').accordion( "activate" , NextIndex );
或者,如果将索引放在删除之后,则应该能够使用相同的索引,具体取决于用于删除accordian元素的函数:)


需要代码,给出具体的解决方案。

代码示例?至少是相关的部分?谢谢这个Marco,我不得不对你的代码做了一些调整,以适应我的情况,但这非常有帮助。