2014-04-21 2 views
0

사용자 지정 목록을 사용하여 채우는 아코디언이 있습니다. 그러나 나는 3 개의 다른 드롭 다운에서 값을 기반으로 목록을 필터링하는 자바 스크립트 함수를 시작하는 버튼이 있습니다. 이것은 또한 작동하지만 내 문제는 이미 페이지에서 아코디언을 파괴하고 새 필터링 된 목록으로 아코디언을 다시 만드는 방법에 있습니다. 현재 새 목록이 이전 아코디언에 추가됩니다 (적어도 필자의 필터 기능이 작동 함을 증명 함). "$ ('# accordion'). append ('destroy')"를 사용하여 시도했지만 새로운 목록은 이전 목록의 끝에 계속 추가됩니다.필터링 된 목록에서 아코디언을 다시 만들 수있는 방법

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 id="accordion"></div> 

답변

0

나는이 일에 내 상사의 도움을 얻었다 여기

내가 현재 아코디언을 생성하고 방법이다. 빈 메서드 $('#accordion').empty();을 사용하여 내 while 루프 바로 전에 accordion div의 내용을 비워야했습니다. 또한 내 코드에는 $('#accordion').accordion("refresh");이 필요하지 않습니다.