Функция автозаполнения Iframe и Jquery - PullRequest
1 голос
/ 02 февраля 2012

Я использую автозаполнение jquery на html-странице, которая используется как источник для ifrmae. Высота и ширина iframe установлены на ширину около 450px и высоту 160p px

Теперь проблема в том, что результирующий набор автозаполнения немного велик, тогда вся настройка испорчена. то, что я пытаюсь сделать, это как-то установить z-индекс текстовых полей так, чтобы результат отображался за пределами рамки.

В настоящее время я увеличил размер iframe, но он занимает много пустого пространства.

Любые предложения о том, как решить эту проблему, приветствуются.

Ответы [ 2 ]

1 голос
/ 02 февраля 2012

Контент в iframe не может «просочиться» в содержащий его документ.Вы можете обновить высоту iframe при обновлении списка автозаполнения.

Проверьте, сколько элементов в списке или высоту списка, и соответственно обновите высоту iframe:

$('#some-element').autocomplete({
    change : function (event, ui) {
        var theHeight = $(this).height();
    }
});
0 голосов
/ 02 февраля 2012

Звучит так, будто вы делаете неправильный выбор интерфейса, если список автозаполнения слишком громоздкий.Как сказал Джаспер (+1), «утечка» iframe не произойдет, вы можете расширить свои контейнеры с помощью jquery - но вы можете рассмотреть возможность использования различных комбинаций элементов управления.Вы подразделяете свои данные перед окном автозаполнения, используя более ранний элемент управления, такой как список радиоканалов, в качестве фильтра данных?Затем, когда этот выбор сделан, настройте источник данных поля автозаполнения, который теперь может иметь более управляемый список, возможно, используя что-то вроде:

var radioValue = $("#radio").val();
$.each(function(key, value) { 
  switch (radioValue)
  {
    case 1: 
    ... filter autocomplete data ... 
    break;
    case 2: ...
  }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...