2010-07-28 2 views
0

Superfish jquery 플러그인과 그 고급 기능을 사용하고 있습니다. 그러나 나는 "많은"목소리 (적어도 300)를 가진 메뉴를 가지고 있으며, 사용자가 쓰는 것에 근거하여 텍스트 필드를 넣고 메뉴 목소리를 필터링하는 방법이 있는지 궁금합니다.superfish 메뉴에서 jquery 검색 및 필터 요소를 사용합니다.

(http://jsearchdropdown.sourceforge.net/는) ... 그러나 이것은 꽤 추한 보인다!

안부, Segolas을

답변

0

해결. 이메일 관련 분야를 포함하고, 메뉴에 요소를 추가하고 제거 큰 HTML 테이블을 내 코드 검색, 입력 텍스트 필드에 사용자가 입력 한 내용을 기반으로합니다.

자바 스크립트 코드 :

$(function(){ 
$('#msgIndexUL').superfish(); 

$("#menuFilterTextField").keyup(function(){   
    $("#msgIndex li:not('#menuFilter')").empty(); 

    var id; 
    var mailSubject; 
    $(".results tbody tr").filter(":contains('"+ $("#menuFilterTextField").val() +"')").each(function(){   
     id = $(this).attr('id'); 
     mailSubject = $($(this).children(".mailSubject")).html();  
     $("#msgIndex").append("<li><a href='#"+id+"'>"+mailSubject+"</a></li>");        

    });       
}); 

});

그리고 HTML :

<ul id="msgIndexUL" class="sf-menu"> 
       <li class="current"> 
        <a href="##">Indice dei messaggi</a> 
        <ul id="msgIndex"> 
         <li id="menuFilter"><input type="text" id="menuFilterTextField"/></li> 
        </ul>    
       </li> 
</ul>