InfoBubble не заполняется вызовом AJAX
У меня интересная проблема. Я использую infoBubble и JQuery для отображения информации, когда пользователь нажимает на маркер на картах Google V3. Это работает, если я использую infoBubble.addTab("информация о вкладке", данные); но не если я использую infoBubble.setContent(content);
Пример кода:
// some code here
infoBubble = new InfoBubble({
maxWidth: 480,
maxHeight: 250,
borderRadius: 5,
arrowSize: 15,
borderWidth: 3,
arrowPosition: 50,
borderColor: '#D6D6D6'
});
$.post("/some/map/info", {id: this.get('id')}, function(data) {
// alert (data);
//infoBubble.addTab('Tab info', data);
infoBubble.setContent(data);
});
infoBubble.open(map, this);
// rest of the code
Этот код открывает информационное окно, но не заполняет его содержимым. Если я раскомментирую окно предупреждения, код работает! Не уверен почему. Также, если я использую функцию addTab, она работает нормально. Я использовал FireBug для отладки, все переменные и данные заполнены правильно, а в режиме отладки - это работает! Вскоре, как я вышел из отладки и не оповещения, он не работает, показывает пустой пузырь. Если кто-нибудь может затенить немного света, с благодарностью.
Спасибо алекс
1 ответ
Я знаю, что это старый вопрос, но я столкнулся с той же проблемой и нашел решение, поэтому я публикую здесь для всех, кто может столкнуться с этим вопросом.
Просто переместите infoBubble.open в функцию $.post()
$.post("/some/map/info", {id: this.get('id')}, function(data) {
infoBubble.setContent(data);
infoBubble.open(map, this);
});