如何从过滤列表中重新创建手风琴

时间:2014-04-21 16:28:40

标签: jquery list jquery-ui-accordion

我有一支手风琴,我使用自定义列表填充。但是我有一个按钮,它启动一个javascript函数,根据3个不同下拉列表中的值过滤列表。这也有效但我的问题是如何破坏已经在页面上的手风琴并用新的过滤列表重新创建手风琴。目前新的列表被附加到旧的手风琴(至少证明我的过滤功能正常)。我尝试过使用" $('#accordion')。追加('销毁')"但新列表将继续附加到旧列表的末尾。

以下是我目前正在制作手风琴的方法:

while (listItemEnumerator.moveNext()) {
     var oListItem = listItemEnumerator.get_current();

listItemInfo += '\nRoom Name: ' + oListItem.get_item('Title')+ ' ' +'Building: ' + oListItem.get_item('Building') + ' ' + 'Floor: ' + oListItem.get_item('Floor') + ' ' + 'Seating: ' + oListItem.get_item('Seating')
+ ' ' +  'Phone Number: ' + oListItem.get_item('Phone_x0020_Number') + ' ' +  'Book Room: ' + oListItem.get_item('Book_x0020_Room')  ;



    var newDiv = "<h3> " +oListItem.get_item('Title').toString() +"  </h3><div> <p> Building :  " +oListItem.get_item('Building').toString()+" </p> </br><p> Floor :" +oListItem.get_item('Floor').toString()+" </p></br><p> Phone Number :" +oListItem.get_item('Phone_x0020_Number').toString()+" </p></br><p> General Size :" +oListItem.get_item('General_x0020_Size').toString()+" </p></br><p> Book Room : <a href =" +oListItem.get_item('Book_x0020_Room').get_url()+">" +oListItem.get_item('Book_x0020_Room').get_description()+"</a> </p></div>";        

$('#accordion').append(newDiv)
    $('#accordion').accordion("refresh"); 



}

我的html体内也有这个div:

<div id="accordion"></div>

1 个答案:

答案 0 :(得分:0)

我得到了老板的帮助。不得不使用空方法$( '#accordion').empty();在我的while循环之前清空手风琴div的内容。此外,我的代码中确实不需要$('#accordion').accordion("refresh");

相关问题