Геокодирование 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. Без него будет заменено только первое вхождение. Второй параметр - строка замены.