2012-07-19 2 views
0

jQuery UI 자동 완성 플러그인으로 작업하고 결과가 없으면 일부 텍스트를 표시하려고합니다. 원격 데이터 세트를 사용하여 많은 예제를 보았지만 로컬 JSON 배열을 소스로 설정했습니다. 현재 작업중인 코드는 선택된 값과 일치하지 않는 모든 행을 숨 깁니다. 나는 모든 행을 숨기고 텍스트 상자에 '을 (를) 찾을 수없는 항목이'사용자가 텍스트를 입력 할 때 그것이 어쩌면 당신은 ui.item.value을 비교할 수있는 사용 가능한 태그결과가없는 경우 jQuery UI 자동 완성 표시

$("#archiveVendor").autocomplete({ 
    source: availableTags, 
    select: function(event, ui){ 
     var emptyRow = '<tr class="emptyArchive"><td class="approved_content">---</td><td>---</td><td>---</td><td class="payment_status">---</td></tr>'; 
     $('.archive_inner .emptyArchive').remove(); 
     $('.archive_inner tr').show().filter(function(index){ 
      var tds = $(this).children('td'); 
      if($(tds).length == 4){ 
       if($(tds[1]).text() == '---'){ 
        return false; 
       } 
       var title = $(tds[0]).attr('title'); 
       return title === ui.item.value ? false : true; 
      } 
     }).hide(); 

     if($('.archive_approved tr:visible').length == 1){ 
      $('.archive_approved tbody').append(emptyRow); 
     } 
     if($('.archive_denied tr:visible').length == 1){ 
      $('.archive_denied tbody').append(emptyRow); 
     } 
    } 
}); 
+0

여기에 빈 드롭 다운에 표시 하시겠습니까? 그런 다음 사용자가 선택할 수 없습니까? – j08691

+0

문제는 사용자가 선택하지 않고 드롭 다운에 텍스트 만 표시하는 것입니다. – Austin

답변

0

과 일치하지 않습니다 표시 할 배열 은요?

if(jQuery.inArray(ui.item.value, json_array) == -1) { add text to right field and hide() other fields }