Как сделать текстовое поле адреса при вводе в который автоматически показывались(подбирались) доступные варианты.
Как на яндекс картах.
Есть ли такой модуль или как это можно реализовать?
Заранее спасибо
Вложение | Размер |
---|---|
1.jpg | 23.57 КБ |
Как сделать текстовое поле адреса при вводе в который автоматически показывались(подбирались) доступные варианты.
Как на яндекс картах.
Есть ли такой модуль или как это можно реализовать?
Заранее спасибо
Вложение | Размер |
---|---|
1.jpg | 23.57 КБ |
Комментарии
А в чем база адресов будет храниться, таксономия ?
В своем случае делал форму с параметром
<?php
$form['adress'] = array('#type' => 'textfield',
'#title' => $vocabulary->name,
'#description' => $help,
'#autocomplete_path' => 'adress_autocomplete/'. $vocabulary->vid,
'#maxlength' => 1024,
);
?>
И определить свой hook_menu()
<?php function mymodule_menu() {
$items['adress_autocomplete'] = array(
'title' => 'Adress',
'page callback' => 'adress_autocomplete_js',
'access arguments' => array('access content'),
'type' => MENU_CALLBACK,
);
return $items;
} ?>
Пример функции "adress_autocomplete_js" можно посмотреть из модуля таксономии:
taxonomy_autocomplete($vid, $string = '')
http://api.drupal.org/api/drupal/modules--taxonomy--taxonomy.pages.inc/f...
Спасибо большое, кое что получилось!
Подскажите еще как можно стилизовать блок результатов?
А то блок сейчас загораживает само поле.
Как в css обратиться к элементу?
В коде страницы сейчас есть следующее:
Заранее спасибо
Попробуй модуль autocomplete_element .
Да, спасибо!
Поле корректно отображается и можно теперь хоть как то повлиять на вид вывода списка.
Единственный остался вопрос как сделать чтобы ширина списка автоматически была по размеру элементов - пока получилось только задать ширину 300px, отключив overflow: hidden
Если есть решение - буду очень благодарен
С этим плагином проблема:
warning: Missing argument 2 for profile_autocomplete(), called in /home/s/shipitru/public_html/sites/all/modules/autocomplete_element/autocomplete_element.module on line 81 and defined in /home/s/shipitru/public_html/modules/profile/profile.pages.inc on line 110.
Поиск бага ничего не дал - то есть пока проблема остается
В итоге получилось так:
отрекдактировал в /public_html/misc/autocomplete.js
$(this.popup).css({
marginTop: this.input.offsetHeight +'px',
// width: (this.input.offsetWidth - 4) +'px',
display: 'none'
});
И добавил в CSS
#autocomplete{
position: absolute;
top:14px;
text-align: left;
width: auto;
}