Есть ли способ передать переменные javascript в url?

Есть ли способ сделать ниже script передать значения javascript URL-адресу ссылки href?

<script type="text/javascript">
function geoPreview(lat,long) {
var elemA = document.getElementById("lat").value;
var elemB = document.getElementById("long").value;

window.location.href = "http://www.gorissen.info/Pierre/maps/googleMapLocation.php?lat=elemA&lon=elemB&setLatLon=Set";

}
</script>

Ответ 1

Попробуйте следующее:

 window.location.href = "http://www.gorissen.info/Pierre/maps/googleMapLocation.php?lat="+elemA+"&lon="+elemB+"&setLatLon=Set";

Чтобы поместить переменную в строку, заключите переменную в кавычки и знаки добавления следующим образом:

var myname = "BOB";
var mystring = "Hi there "+myname+"!"; 

Просто помните одно правило!

Ответ 2

Вы имеете в виду включать значения переменной javascript в строку запроса URL?

Да:

 window.location.href = "http://www.gorissen.info/Pierre/maps/googleMapLocation.php?lat="+var1+"&lon="+var2+"&setLatLon="+varEtc;

Ответ 3

Резюме

С помощью либо конкатенации строк, либо строковой интерполяции (через шаблонные литералы).

Здесь с литералом шаблона JavaScript:

function geoPreview() {
    var lat = document.getElementById("lat").value;
    var long = document.getElementById("long").value;

    window.location.href = 'http://www.gorissen.info/Pierre/maps/googleMapLocation.php?lat=${lat}&lon=${long}&setLatLon=Set';
}

Оба параметра не используются и могут быть удалены.

замечания

Конкатенация строк

Присоедините строки с помощью оператора +:

window.location.href = "http://www.gorissen.info/Pierre/maps/googleMapLocation.php?lat=" + elemA + "&lon=" + elemB + "&setLatLon=Set";

Интерполяция строк

Для более сжатого кода используйте литералы шаблонов JavaScript, чтобы заменить выражения на их строковые представления. Буквы шаблонов заключены в '' и заполнители, окруженные ${}:

window.location.href = 'http://www.gorissen.info/Pierre/maps/googleMapLocation.php?lat=${elemA}&lon=${elemB}&setLatLon=Set';

Литералы шаблонов доступны с ECMAScript 2015 (ES6).

Ответ 4

Попробуй это:

window.location.href = "http://www.gorissen.info/Pierre/maps/googleMapLocation.php?lat=\''+elemA+'\'&lon=\''+elemB+'\'&setLatLon=Set";

Ответ 5

Это довольно сложно, но имеет смысл для неопытного программиста. В URL вы можете включить знак "#", и все остальное может идти после этого, просто переходя на эту страницу. Так что вы можете использовать JS:

var pass = prompt("what do you want to pass")
var site = "https://google.com"
var readysite = site + pass
document.location.replace(readysite)

Затем на другой странице используйте JavaScript для чтения URL и получения необходимой информации.

ПРИМЕЧАНИЕ: JS выше не проверен.