Перейти к содержимому
Открыть в приложении

Удобный способ просмотра. Узнать больше.

Дизайн и модификация Invision Community

Полноэкранное приложение на главном экране с push-уведомлениями, медалями и многим другим.

Чтобы установить это приложение на iOS и iPadOS
  1. Нажмите иконку «Поделиться» в Safari
  2. Прокрутите меню и нажмите На экран «Домой».
  3. Нажмите Добавить в правом верхнем углу.
Чтобы установить это приложение на Android
  1. Нажмите меню из трёх точек (⋮) в правом верхнем углу браузера.
  2. Нажмите Добавить на главный экран или Установить приложение.
  3. Подтвердите, нажав Установить.
Русский язык для Invision Community 5

Поле с подгрузкой списка пользователей

Приветствую.

 

делаю небольшой модуль, добавляющий в профиль пользователя некотрые опции.

Так имеется поле (input text) куда должно быть вписан ник пользователя. Оно должно работать автоподбором по первым введенным символам, как при создании ЛС например.

Долго изучал как оно функционирует при создании ЛС, но так до конца и непонял.

 

идет вызов app=core&module=ajax&section=findnames&do=get-member-names&secure_key=' + ipb.vars['secure_hash'] + '&name='

 

добавление скрипта

<script type="text/javascript">
	document.observe("dom:loaded", function(){
		var url = ipb.vars['base_url'] + 'app=core&module=ajax&section=findnames&do=get-member-names&secure_key=' + ipb.vars['secure_hash'] + '&name=';
		new ipb.Autocomplete( $('mem_name1'), { multibox: false, url: url, templates: { wrap: ipb.templates['autocomplete_wrap'], item: ipb.templates['autocomplete_item'] } } );
	});
	</script>

 

не спасет, видно что идет подгрузка (появлятся индикатор после ввода трех символов) но блок с никами не отображается.

 

объясните мне как правильно выглядит вся эта структура отслеживание keypress в поле и подгрузка списка пользователей

Рекомендованные сообщения

Примерно так. Посмотрите в дебагере браузера состояние запроса и ответ от сервера, возможно чтото упущено в запросе.

  • Автор

хм.. вроде заработало, в чем загвоздка была так и непонял, видать где-то сам описался в скрипте или в индификаторе поля

 

теперь проблема как это блок с подгруженными никами позиционировать? а то отображается по координатам 0,0 от начала окна, а хотелось бы к input привязать

Прикрепите его к этому элементу.

  • Автор

подскажите где это сделать

 

код инпута

<input type="text" class="input_text" id="vr_nmem" name="vr_nmem" size="30" value="'.$this->request['vr_nmem'].'" >

 

код скрипта

<script type="text/javascript">
	document.observe("dom:loaded", function(){
	  var url = ipb.vars['base_url'] + 'app=core&module=ajax&section=findnames&do=get-member-names&secure_key=' + ipb.vars['secure_hash'] + '&name=';
          new ipb.Autocomplete( $('vr_nmem'), { multibox: false, url: url, templates: { wrap: ipb.templates['autocomplete_wrap'], item: ipb.templates['autocomplete_item'] } } );
 });
</script>

 

нашел вот такой формат позиционирования автокомплита, но в какой момент это вписывать

$("selector").autocomplete({ position:{my:"right top", at:"right bottom"} });

Изменено пользователем rabotnik

  • Автор

выяснилось что, скрипт не работает или появляется сбой в позиционировании, если нужный инпут находится например на одной из вкладок профиля(вкладка не активна по умолчанию, подгружается только контент вкладки без перезагрузки страницы), а также если инпут расположен в изначально скрытом блоке.

 

как это обойти?

Изменено пользователем rabotnik

Создайте аккаунт или войдите в него для комментирования

Аккаунт

Навигация

Поиск

Поиск

Настроить push-уведомления браузера

Chrome (Android)
  1. Нажмите на иконку замка рядом с адресной строкой.
  2. Нажмите Права доступа -> Уведомления.
  3. Измените свои настройки.
Chrome (компьютер)
  1. Нажмите на иконку замка в адресной строке.
  2. Выберите Настройки сайта.
  3. Найдите Уведомления и измените свои настройки.