yandexMaps & MIGx некорректно работают вместе

Шикарный компонент. Особенно в бэкенде. Но я вот попробовал его с migx подружить:
Вкладки формы
[{
	"caption": "Партнер", 
	"fields": [{
		"field": "name", 
		"caption": "Название"
	}, {
		"field": "description", 
		"caption": "Описание",
		"inputTVtype": "textarea"
	}, {
		"field": "yamap", 
		"caption": "Адрес", 
		"inputTVtype": "yandexMaps"
	}]
}]
Таблица
[{
	"header": "Название", 
	"dataIndex": "name", 
	"width": "300",
	"editor": "this.textEditor"
}, {
	"header": "Описание", 
	"dataIndex": "description", 
	"width": "500",
	"editor": "this.textEditor"
}, {
	"header": "Координаты", 
	"dataIndex": "yamap", 
	"width": "200"
}]
карта подтягивается, а ввод адреса не работает, появляется обычный инпут «Адрес» с кнопкой, города не подтягиваются, при заполнении поля карта никак не реагирует, при нажатии на кнопку найти — тоже( есть идеи, что пошло не так? консоль хрома ошибок не выдает
mngatoff
22 июля 2015, 10:10
modx.pro
1
1 598
0

Комментарии: 14

    mngatoff
    22 июля 2015, 19:32
    0
    не попали. imageTVtype уже давно считается более грамотным решением, нежели отдельную TV в MIGx запихивать.
    И в любом случае, проблема осталась и с inputTV
      Fi1osof
      22 июля 2015, 21:01
      +1
      А у вас где-то imageTVtype yandexMaps заведено? Где именно?
      И в любом случае, проблема осталась и с inputTV
      И можете скрин сделать на странице редактирования документа? Не совсем понятно где у вас карта подтягивается, а где поле ввода не работает.
        mngatoff
        22 июля 2015, 21:09
        0
        inputTVtype yandexMaps появляется при установке компонента yandexMaps, как указано в теме поста.
    Fi1osof
    22 июля 2015, 23:52
    +2
    консоль хрома ошибок не выдает
    Не знаю как в хроме, но в лисе ошибка имеется. joxi.ru/nAyz3VMFLagZrZ
    По сабжу: здесь довольно просто все, и не просто одновременно. Не до конца копал, но 99% проблема в следующем: данная ТВха формирует и используется свою форму.
    <div class="yandexmaps-map-blocks-wrapper">
    	<form id="yandexmaps-search-form">
    		<input type="text" id="suggest" class="yandexmaps-form-text" placeholder="Поиск на карте" value="" />
    		<input type="submit" class="yandexmaps-form-submit" value="Найти" />
    	</form>
    	<div class="yandexmaps-map-wrapper">
    		<div id="tv{$tv->id}YaMap" class="yandexmaps-map"></div>
    	</div>
    </div>
    Ее же скрипт отлавливает по айдишнику.
    /* >> Обрабатываем поиск по карте из нашей формы */
    		var searchForm = $("#yandexmaps-search-form");
    Проблема в том, что по спецификации HTML не может быть два тега , вложенных в друг друга. Мига свою форму создает, и в нее же рендерит поля. А тут еще одна форма… Из-за этого все и ломается. Браузер вырезает вложенную форму TV-хи, и поиск формы уже не канает. В обычной форме редактора страницы такого не происходит, так как там не используется тег . Собственно и здесь не надо было его использовать и не совсем ясно зачем было jQuery мешать с ExtJS. Если бы нормально на ExtJS-компонентах все было сделано, проблем бы не возникало.

    Резюме: yandexMaps надо переписать, чтобы не использовало тег , тогда должно все заработать.
      mngatoff
      23 июля 2015, 01:54
      0
      спасибо) черканем создателю и поковыряем сами
        Fi1osof
        23 июля 2015, 10:51
        0
        Пожалуйста.
          Евгений Шеронов
          30 сентября 2015, 23:12
          0
          Алексей, Вы смогли разобраться с такой связкой MIGx+yandexMaps?
          Тоже нужно добавлять несколько адресов на страничку.
          Fi1osof
          23 июля 2015, 10:53
          +1
          Не сразу обратил внимание. Из коммента вырезались все теги
          <form>
          . Везде, где я писал про вложенные теги, имелся ввиду именно этот тег. Но, думаю, итак все все поняли.
        Павел
        25 мая 2017, 12:00
        +1
        Теме ап! Решения не придумал ещё не кто?
          Кирилл Киселев
          29 мая 2019, 10:03
          0
          Теме ап! Почему до сих пор не переписали yandexmaps?
            Кирилл Киселев
            29 мая 2019, 13:53
            0
            Переделал tpl tv.yandexMaps.input.tpl и добавил плагин. Пишите мне в ВК, кому нужно решение (ссылка в профиле). Оно слишком большое для сообщения.
          Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
          14