Quantcast
Channel: Yii Framework Forum
Viewing all articles
Browse latest Browse all 18717

Egmap - Odświeżanie Zawartości Markerów Z Bazy

$
0
0
Witam serdecznie. Czy ktoś mógłby mnie naprowadzić, ewentualnie pomóc mi w takiej kwestii: poniżej mam działający kod, który wyświetla markery z bazy na mapie egmap, który jest powiązany z widgetem CGRidView. Wszystko działa prawie jak należy poza jednym wyjątkiem - gdy nawiguję pomiędzy rekordami używając paginacji, kasując rekordy lub używając wyszukiwarki - to zawartość mapy się nie odświeża. Zawartość mapy jest pobierana prawidłowo tylko, podczas pierwszego otwarcia strony. Gdzieś pewnie brakuje jakiejś funkcji ajaxowej, która nakazałaby mapie, aby pobrała na nowo markery w zależności od tego, co jest wyświetlane w siatce CGridView. Z góry dziękuję za pomoc i pozdrawiam

Oto mój kod:
<?php
Yii::import('ext.gmap.*');
$gMap = new EGMap();
$gMap->zoom = 2;
$mapTypeControlOptions = array(
  'position'=> EGMapControlPosition::LEFT_BOTTOM,
  'style'=>EGMap::MAPTYPECONTROL_STYLE_DROPDOWN_MENU
);
$gMap->mapTypeControlOptions= $mapTypeControlOptions;
$gMap->setCenter(39.721089311812094, 2.91165944519042);

$dataProvider=$model->search();
  $i = 0;
  if ( $dataProvider->getData() ) {
  foreach ($dataProvider->getData() as $row) {
  $i++;
  // Create marker
  $marker = new EGMapMarker($row['lat'], $row['lng']);
  $gMap->addMarker($marker);
  }
  }
$gMap->renderMap();
//end of egmap

//start search and gridview

Yii::app()->clientScript->registerScript('search', "
$('.search-button').click(function(){
	$('.search-form').toggle();
	return false;
});
$('.search-form form').submit(function(){
	$('#mapa-grid').yiiGridView('update', {
		data: $(this).serialize()
	});
	return false;
});
");

echo CHtml::link('Advanced Search','#',array('class'=>'search-button')); ?>
<div class="search-form" style="display:none">
<?php $this->renderPartial('_search',array(
	'model'=>$model,
)); ?>
</div>&lt!-- search-form -->

<?php $this->widget('zii.widgets.grid.CGridView', array(
	'id'=>'mapa-grid',
	'dataProvider'=>$model->search(),
	'filter'=>$model,
	'columns'=>array(
		'id',
		'idspecies',
		'lat',
		'lng',
		array(
			'class'=>'CButtonColumn',
		),
	),
)); ?>


Viewing all articles
Browse latest Browse all 18717

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>