Ситуация такая:
Модуль свой
Открывается страница для создания элемента, одно из свойств в котором - карта Яндекс
На странице имеется селект с выбором категории, в зависимости от выбора ajax'ом подгружается php с полями формы
Если выбрать один раз, то подгружаются поля вместе с картой, и как бы все работает отлично, элемент сохраняется со всеми выбранными и введенными полями, т.е. работает стабильно. Но если потыкать выбор категории (будут подгружаться другие php файлы с формами или тот же, если вернуться), то при повторной подгрузке карта не работает, пишет "загрузка карты...", хотя все остальное работает стабильно и элемент нормально создается, только естественно с пустым значением свойства привязки к яндекс карте.
ajax.php:
Модуль свой
Открывается страница для создания элемента, одно из свойств в котором - карта Яндекс
На странице имеется селект с выбором категории, в зависимости от выбора ajax'ом подгружается php с полями формы
Если выбрать один раз, то подгружаются поля вместе с картой, и как бы все работает отлично, элемент сохраняется со всеми выбранными и введенными полями, т.е. работает стабильно. Но если потыкать выбор категории (будут подгружаться другие php файлы с формами или тот же, если вернуться), то при повторной подгрузке карта не работает, пишет "загрузка карты...", хотя все остальное работает стабильно и элемент нормально создается, только естественно с пустым значением свойства привязки к яндекс карте.
ajax.php:
| Код |
|---|
<?if (!class_exists(CMain))
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
\Bitrix\Main\Loader::includeModule('iblock');
\Bitrix\Main\Loader::includeModule('highloadblock');
use Bitrix\Highloadblock as HL;
use Bitrix\Main\Entity;
?>
...
<div class="map">
<?=CIBlockPropertyMapYandex::GetPublicEditHTML(array("CODE" => "MAP","ID"=>"element","MULTIPLE"=>"N","USER_TYPE"=>"map_yandex"),array("VALUE"=>""),array("VALUE"=>"PROPERTY[CATALOG][MAP]","DESCRIPTION"=>"","MODE"=>"FORM_FILL","FORM_NAME"=>"PROPERTY[CATALOG][MAP]"));?>
</div>
...
<?if (!class_exists(CMain))
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_after.php");
?> |