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:
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><!-- 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', ), ), )); ?>