@Anatoly_Rodin
Frontend-developer at online-express.ru

Как сгруппировать по категориям результат автокомплита в Yii — CJuiAutoComplete?

Ниже приведенный код исправно работает - выдает список с результатами поиска, но...
Понадобилось группировать список по категориям (город, отель и тд).

В документации по данному виджету ничего не нашел. Как я выяснил, он использует jquery autocomplete. Там же есть пример сортировки по категориям. Но в силу малого опыта работы с Yii и JQueryUI так и не смог прикрутить одно к другому.

Буду рад любой идеи или решению.
Спасибо.

<div class="row-fluid">
  <div class="control-group span12">
     <?= CHtml::activeLabelEx($model, 'place'); ?>
     <? $this->widget('zii.widgets.jui.CJuiAutoComplete', array(
						'model' => $model,
						'attribute' => 'place',
						'sourceUrl' => CController::createUrl('GetPlaces'),
						'options' => array(
							'delay' => '0',
							'minLength' => '2',
							'select' => 'js: function(event, ui) {
								this.value = ui.item.label;
                                $("#HotelSearchForm_placeId").val(ui.item.placeId);
                                $("#HotelSearchForm_placeType").val(ui.item.placeType);
								return false;
							}'
						),
						'htmlOptions' => array(
							'class' => 'span12',
							'style' => 'font-size:18px; height:36px; ',
						),
					)); ?>
					<? echo $form->hiddenField($model, 'placeId'); ?>
					<? echo $form->hiddenField($model, 'placeType'); ?>
					<?
					Yii::app()->clientScript->registerScript('autocomplete', "
						

                        jQuery('#HotelSearchForm_place').data('ui-autocomplete')._renderItem = function( ul, item ) {
							return $( '<li>' )
							.data( 'item-autocomplete-item', item )
							.append( '<div style=\'margin: 0 20px;\'><p style=\'float: left; margin: 0 \'>' + item.value
							+ ' <i>(' + item.type + ')</i>'
							+ '</p><i style=\'float: right\'>' + item.hasHotels + '</i></div>' )
							.appendTo( ul );

						};

 						 ",
						CClientScript::POS_READY
					);
					?>

	</div>
</div>
  • Вопрос задан
  • 188 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
23 нояб. 2024, в 00:16
2000 руб./за проект
22 нояб. 2024, в 23:55
3000 руб./за проект
22 нояб. 2024, в 22:26
3500 руб./за проект