在accordion-JQuery中重置我的搜索

在accordion-JQuery中重置我的搜索,jquery,jquery-ui,bootstrap-4,Jquery,Jquery Ui,Bootstrap 4,我已经创建了一个手风琴面板,并用它创建了一个搜索功能。在我的应用程序中,我有一个重置按钮,它可以删除我的搜索并显示所有手风琴面板的正常视图,可以切换。我已经完成了重置,重置后面临切换问题。我已经用这个添加了我的JSFIDLE。有人能帮我解决这个问题吗 我的jQuery:- (function() { var searchTerm, panelContainerId; $.expr[':'].containsCaseInsensitive=function(n, i, m) { r

我已经创建了一个手风琴面板,并用它创建了一个搜索功能。在我的应用程序中,我有一个重置按钮,它可以删除我的搜索并显示所有手风琴面板的正常视图,可以切换。我已经完成了重置,重置后面临切换问题。我已经用这个添加了我的JSFIDLE。有人能帮我解决这个问题吗

我的jQuery:-

(function() {
  var searchTerm, panelContainerId;
  $.expr[':'].containsCaseInsensitive=function(n, i, m) {
    return jQuery(n).text().toUpperCase().indexOf(m[3].toUpperCase())>=
      0;
  };

  $('#accordion_search_bar').on('change keyup paste click', function() {

    searchTerm=$(this).val();
    var textboxval=$("#accordion_search_bar").val();
    $('#accordion > .panel').each(function() {
      debugger;
      panelContainerId='#'+$(this).attr('id');
      var BodyId=panelContainerId.split('_')[0];
      $(panelContainerId+':not(:containsCaseInsensitive('+searchTerm+
        '))').hide();
      $(panelContainerId+':containsCaseInsensitive('+searchTerm+
        ')').show();
      if(textboxval.length>2) {
        $(BodyId).css('display', 'block');
      }
      else {
        $(BodyId).css('display', 'none');
      }
    });
  });

  $('#showAll').click(function() {

    $('#accordion > .panel').each(function() {
      panelContainerId='#'+$(this).attr('id');
      var BodyId=panelContainerId.split('_')[0];
      $(panelContainerId+':not(:containsCaseInsensitive('+searchTerm+
        '))').show();
      $(panelContainerId+':containsCaseInsensitive('+searchTerm+
        ')').show();
      $(BodyId).css('display', 'none');

      /* $(BodyId).css('display','none'); */
    });
  });

在这种情况下,使用display:block或none是不正确的。手风琴显示内容与课堂上请检查剪接的代码。
(函数(){
var searchTerm,panelContainerId;
$.expr[':'].ContainsCaseSensitive=函数(n,i,m){
返回jQuery(n).text().toUpperCase().indexOf(m[3].toUpperCase())>=
0;
};
$(“#手风琴搜索栏”)。打开('change keyup paste click',function(){
searchTerm=$(this.val();
var textboxval=$(“#手风琴搜索栏”).val();
$('#accordion>.panel')。每个(函数(){
调试器;
panelContainerId='#'+$(this.attr('id');
var BodyId=panelContainerId.split(“”“)[0];
$(panelContainerId+):非(:ContainesCaseSensitive('+searchTerm)+
“)”)。隐藏();
$(panelContainerId+):ContainesCaseSensitive('+searchTerm)+
)。show();
如果(textboxval.length>2){
$(BodyId).attr('class','panel collapse in');
}否则{
$(BodyId).attr('class','panel collapse');
}
});
});
$('#showAll')。单击(函数(){
$('#accordion>.panel')。每个(函数(){
panelContainerId='#'+$(this.attr('id');
var BodyId=panelContainerId.split(“”“)[0];
$(panelContainerId+):非(:ContainesCaseSensitive('+searchTerm)+
)。show();
$(panelContainerId+):ContainesCaseSensitive('+searchTerm)+
)。show();
$(BodyId).attr('class','panel collapse');
$(“#手风琴搜索栏”).val(“”);
//$(BodyId).css('display','none');
/*$(BodyId).css('display','none')*/
});
});
}());
正文{
背景:灰色;
填充:20px;
字体系列:Helvetica;
}

全部重置
一
佩伦茨克康瓦利斯多洛酒店

埃尼姆大酒庄酒店

二 laoreet nisi前庭

坐在阿梅特广场上

三 库拉比图尔酒店

艾米特·努克·埃吉特,莫利斯孕妇


很好用,非常感谢。但是,为什么在搜索之后,当尝试切换搜索结果时,边界不会随着内容关闭。你能看到吗。我不明白。你能解释一下吗。我在搜索框中搜索了一个,结果是主体内容打开('display':'block'),当试图切换搜索结果时,它只是关闭边框,而不是主体内容。