Я не буду спрашивать, зачем вам это. Просто расскажу, как я придумал это сделать.
Файл "a.html":
<html>
<head>
<title>Document</title>
</head>
<body>
<form action="b.html" method="GET">
<input type="text" name="variable1">
<input type="text" name="variable2">
<input type="submit">
</form>
</body>
</html>
В форме указываем, что будет использоваться метод GET (почитайте в интернетах, если не знаете, что это такое и как это работает). Методом GET значения передаются прямиком в ссылке (ссылка вида "
example.com?var1=
Hello&
var2=
World", где жирным выделено название переменной, а курсивом — ее значение). НО! GET имеет ограничение в длине передаваемых данных (об этом тоже почитайте в интернетах), имейте это в виду.
У элементов input есть параметр name. Он содержит имя переменной, отправляемой в GET запросе, а ее значение автоматически берется из того, что вы ввели в input.
Так-с, при отправке формы у нас откроется страница b.html
<html>
<head>
<title>Document</title>
</head>
<body>
<script type="text/javascript">
function getGETParameters(paramStr){
return Object.fromEntries(paramStr.split('&').map(e => decodeURI(e).split('=')));
}
console.log(getGETParameters(window.location.search.substr(1)));
</script>
</body>
</html>
Когда она откроется, посмотрите на строку поиска/адреса, там вы увидите, как примерно выглядит GET-запрос. Потом загляните в консоль и увидите, что там отображается массив (или объект). Я думаю, вы поймете, для чего он нужен.
Немного изменим файл b.html
<html>
<head>
<title>Document</title>
</head>
<body>
<script type="text/javascript">
function getGETParameters(paramStr){
return Object.fromEntries(paramStr.split('&').map(e => decodeURI(e).split('=')));
}
let variables = getGETParameters(window.location.search.substr(1));
console.log(variables["variable1"]); // эта строка выведет в консоль то, что Вы вводили в первый input
</script>
</body>
</html>