2012-02-01 2 views
1

ifrmae의 소스로 사용되는 html 페이지에서 jquery 자동 완성을 사용하고 있습니다. iframe의 높이와 너비는 약 450px 너비 및 160p 픽셀 높이로 고정되어 있습니다.Iframe 및 Jquery 자동 완성 기능

이제 자동 완성의 결과 집합이 약간 큰 경우 전체 설정이 엉망이되는 문제가 있습니다. 내가 뭘 하려는지 어떻게 든 결과가 프레임 경계 바깥쪽에 나타나도록 텍스트 상자의 z- 인덱스를 설정합니다.

현재 iframe 크기를 늘렸으나 빈 공간을 많이 차지합니다.

이 문제를 해결하는 방법에 대한 제안은 언제나 환영합니다.

답변

1

iframe의 콘텐츠가 문서를 포함하고있어 "누출 될"수 없습니다. 자동 완성 목록이 업데이트되면 iframe의 높이를 업데이트 할 수 있습니다.

점검 목록 또는 목록의 높이에 얼마나 많은 항목을 확인하고 그에 따라 iframe 대응의 높이를 업데이트 :

$('#some-element').autocomplete({ 
    change : function (event, ui) { 
     var theHeight = $(this).height(); 
    } 
}); 
+0

, 다른 방법 : 다음 선택이 이루어질 때 지금 아마 같은 것을 사용하여보다 관리 목록을 수있는 자동 완성 상자의 데이터 소스를 조정 이 일을 끝내려면 getJSON을 사용하여 파일이 원격 서버에 있지만이 작업을 수행 할 수 없습니다. – Sandhurst

0

그것은 않는 당신이 경우 잘못된 UI의 선택을 할 수있다처럼 소리 자동 완성 목록이 너무 다루기 힘듭니다. Jasper (+1)가 iframe 'leaking'이 발생하지 않을 것이라고 말했기 때문에 jquery를 사용하여 컨테이너를 확장 할 수 있지만 컨트롤의 여러 조합을 사용하는 것을 고려할 수도 있습니다.

예를 들어 라디오 목록과 같은 이전 컨트롤을 데이터 필터로 사용하여 자동 완성 상자보다 먼저 데이터를 세분화 할 수 있습니까? 내가 생각하고 있었다 페이지에 요소를 이동합니다

var radioValue = $("#radio").val(); 
$.each(function(key, value) { 
    switch (radioValue) 
    { 
    case 1: 
    ... filter autocomplete data ... 
    break; 
    case 2: ... 
    } 
});