Геокодирование API Карт Google

Я использую геокодирование API Карт Google, чтобы превратить адрес в местоположение на карте. Я настроил это как:

var address = document.getElementById ("address"). innerText;

У меня есть адрес, настроенный как

123 CandyCane Lane (Северный полюс, Антарктида)

Всякий раз, когда я ставлю
после первой строки геокодирование не даст никаких результатов. Но когда я убираю его и адрес в одной строке, геокодер работает отлично. Я думал, что innerText не учитывает HTML, такой как (br />. Есть ли способ сделать так, чтобы он пропускал разрыв строки?

Спасибо

PS Я знаю, что у моих разрывов строк в начале есть парантезы, но это потому, что мой пост не распознавал разрыв строк HTML.

1 ответ

Решение

.innerText, как вы говорите, не возвращает тег перевода строки (br), но возвращает символ новой строки (\n).

Простое решение (замените его пробелом):

var address = document.getElementById('address').innerText.replace(/\n/g, ' ');

Edit,.replace () - метод строкового объекта, который принимает регулярное выражение в качестве первого параметра. 'G' обозначает глобальный, что означает, что он должен заменить все вхождения \n. Без него будет заменено только первое вхождение. Второй параметр - строка замены.

Другие вопросы по тегам