(РЕШЕНО) как заменить dropdown в фильтре на autocomplete

Главные вкладки

Аватар пользователя stepnoy stepnoy 4 февраля 2011 в 23:20

Всем здрасте!!!

(с),,,а по ночам только гугл снится.

неделю импортировал города россии еле сделал теперь

не могу найти модуль или что нить такое, что может заменить в фильтре созданном вьюшкой из словаря выпадающий список на autocomplete

ВложениеРазмер
Иконка изображения filtr.jpg11.09 КБ

Комментарии

Аватар пользователя stepnoy stepnoy 10 ноября 2015 в 11:47

сайт по грузоперевозкам лабаю ), конкуренты ведь нужны платным сайтам вот я как волонтер решил побороться с ними

что то я не нашел замену в настройках фильтра
вот что у меня есть

Аватар пользователя q2_faith q2_faith 5 февраля 2011 в 16:19

попробуйте добавить фильтр по термину с глубиной и вы сразу увидите выбор автокомплит или выпадающий

Аватар пользователя stepnoy stepnoy 5 февраля 2011 в 19:11

спасобо огромное!!!

отлично то что нужно работает как часики, но из за моей структуры типа документа есть проблема:

тип документа
- добавить груз - fild_okuda и fild_kuda используют один словарь (города)
- добавить транспорт - тоже самые поля и тот же словарь

когда я создаю фильтр добавляю тип поля fild_okuda и fild_kuda, но там нету выбора autocomplete или dropdown.

так как ты посоветовал мне придется сделать 2 словаря города_откуда и города_куда и их вставлять в ноду, а потом фильтровать, хотя б так, буду модули лишнии косить а то тариф хоста не тянет с 1 словарем пришлось переходить на 3 тариф ))

Аватар пользователя stepnoy stepnoy 10 ноября 2015 в 11:47

поле ввода вышло за границы фильтра, блок установлен в правом регионе,
а в центре нормально, но не очень красиво

Аватар пользователя q2_faith q2_faith 7 февраля 2011 в 23:47

установите firefox, к нему установите дополнение firebug. после этого правкой кнопкой на элементе и анализировать элнемент
вы до этого на ощупь верстали?))

Аватар пользователя stepnoy stepnoy 8 февраля 2011 в 7:42

благодарю за помощь сейчас все сделаю

"q2_faith" wrote:
вы до этого на ощупь верстали?))

только html странички на уровне начинающего по самоучителю до css недошол ),

Аватар пользователя stepnoy stepnoy 8 февраля 2011 в 7:58

<input type="text" class="form-text form-autocomplete" value="" size="60" id="edit-term-node-tid-depth-1" name="term_node_tid_depth_1" maxlength="128" autocomplete="OFF">

я так понимаю это темизацию необходимо изучить? а вот это «size="60"» наверно и отвечает за длину поля?

я в chrome изменил длину, там встроен типа firebug, вешь супер,
теперь бы понять где искать, в теме?в модуле?

Аватар пользователя q2_faith q2_faith 8 февраля 2011 в 9:46

"stepnoy" wrote:
id="edit-term-node-tid-depth-1"

вот для этого задайте фиксированную ширину в файле css
"stepnoy" wrote:
«size="60"»

если не ошибаюсь это задается в настройках поля

Аватар пользователя stepnoy stepnoy 8 февраля 2011 в 14:56

"q2_faith" wrote:
если не ошибаюсь это задается в настройках поля

в таксаномии, настройки словаря такого нету
в типе содержимого и в представлении тоже нету

а id="edit-term-node-tid-depth-1" я даже и не представляю где спрятоно

но нашел вот:
Дисплей вывода: views-view.tpl.php
Стиль вывода: views-view-table.tpl.php
Поле Материалы: От куда (field_otkuda) (ID: field_otkuda_value): views-view-field.tpl.php

еще есть в sites/all/modules/views/theme:

views-exposed-form.tpl.php
views-view.tpl.php
views-view-field.tpl.php

<?php#
<?php
#
// $Id: views-view-field.tpl.php,v 1.1 2008/05/16 22:22:32 merlinofchaos Exp $
#
/**
#
  * This template is used to print a single field in a view. It is not
#
  * actually used in default Views, as this is registered as a theme
#
  * function which has better performance. For single overrides, the
#
  * template is perfectly okay.
#
  *
#
  * Variables available:
#
  * - $view: The view object
#
  * - $field: The field handler object that can process the input
#
  * - $row: The raw SQL result that can be used
#
  * - $output: The processed output that will normally be used.
#
  *
#
  * When fetching output from the $row, this construct should be used:
#
  * $data = $row->{$field->field_alias}
#
  *
#
  * The above will guarantee that you'll always get the correct data,
#
  * regardless of any changes in the aliasing that might happen if
#
  * the view is modified.
#
  */
#
?>
#
<?php print $outpu?>

views-view-fields.tpl.php

<?php#
<?php
#
// $Id: views-view-fields.tpl.php,v 1.6 2008/09/24 22:48:21 merlinofchaos Exp $
#
/**
#
 * file views-view-fields.tpl.php
#
 * Default simple view template to all the fields as a row.
#
 *
#
 * - $view: The view in use.
#
 * - $fields: an array of $field objects. Each one contains:
#
 * - $field->content: The output of the field.
#
 * - $field->raw: The raw data for the field, if it exists. This is NOT output safe.
#
 * - $field->class: The safe class id to use.
#
 * - $field->handler: The Views field handler object controlling this field. Do not use
#
 * var_export to dump this object, as it can't handle the recursion.
#
 * - $field->inline: Whether or not the field should be inline.
#
 * - $field->inline_html: either div or span based on the above flag.
#
 * - $field->separator: an optional separator that may appear before a field.
#
 * - $row: The raw result object from the query, with all data it fetched.
#
 *
#
 * ingroup views_templates
#
 */
#
?>
#
<?php foreach ($fields as $id => $field): ?>
#
<?php if (!empty($field->separator)): ?>
#
<?php print $field->separator?>
#
<?php endif; ?>
#
 
#
<<?php print $field->inline_html;?> class="views-field-<?php print $field->class?>">
#
<?php if ($field->label): ?>
#
<label class="views-label-<?php print $field->class?>">
#
<?php print $field->label?>:
#
</label>
#
<?php endif; ?>
#
<?php
#
// $field->element_type is either SPAN or DIV depending upon whether or not
#
// the field is a 'block' element type or 'inline' element type.
#
?>
#
<<?php print $field->element_type?> class="field-content"><?php print $field->content?></<?php print $field->element_type?>>
#
</<?php print $field->inline_html;?>>
#
<?php endforeach; ?>
Аватар пользователя stepnoy stepnoy 8 февраля 2011 в 15:37

есть во что:

views.css
views-tabs.css
views-list.css
views-list-rtl.css

вот тут может надо дописать views-rtl.css:

.views-exposed-form .views-exposed-widget {
 
float: right; /* RTL */
 
padding: .5em 1em 0 0; /* RTL */
 
}
 
 
Аватар пользователя stepnoy stepnoy 10 февраля 2011 в 21:53

вот нашел но не вкурсе как это оформитть

[window.]document.getElementById("elementID").style.maxWidth

я так понимаю elementID это edit-term-node-tid-depth-1 , а куда size="60"

Аватар пользователя stepnoy stepnoy 11 февраля 2011 в 8:46

может это поможет мне но как им воспользоваться

http://api.drupal.ru/api/file/developer/topics/forms_api_reference.html/...

textfield
Описание: Однострочное тестовое поле.

Параметры: #ahah, #attributes, #autocomplete_path (по-умолчанию: FALSE), #default_value, #description, #field_prefix, #field_suffix, #maxlength (по-умолчанию: 128), #prefix, #required, #size (по-умолчанию: 60), #suffix, #title, #type. #weight

Пример использования (forum.module):

<?php
$form['title'] = array(
  '#type' => 'textfield',
  '#title' => t('Subject'),
  '#default_value' => $node->title,
  '#size' => 60,
  '#maxlength' => 128,
  '#required' => TRUE,
);
?>
Аватар пользователя stepnoy stepnoy 11 февраля 2011 в 10:29

"q2_faith" wrote:
#edit-term-node-tid-depth-1-wrapper{width: 215px}

спасибо огромное то что нужно!!!
, только "-wrapper" почему то не нужно было

Буду css изучать а то без него я так понял некак

Аватар пользователя stepnoy stepnoy 12 февраля 2011 в 16:45

возник еще вопрос:

В фильтре пишу Ростов появляется Ростов, Ростов на дону и т.д, как сделать чтоб в авто наполняемом фильтре показывались родители

например: 1) Ростовская область, Ростов На дону
2) Ярославская область, Ростов