Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   Выбор языка и сайта (https://javascript.ru/forum/css-html/76347-vybor-yazyka-i-sajjta.html)

Мявчик Мявчине 02.01.2019 14:51

Выбор языка и сайта
 
:help: Я разрабатывал сайт и мне понадобился выбор языка и вида.
В html это выглядит примерно так:
<form>
<select>
<option>Српски</option>
<option>Русский</option>
<option>English</option>
</select>
<select>
<option>Tourist</option>
<option>Partners</option>
<option>Domens</option>
<option>Theatre</option>
</select>
<button type="submit">Open</button>
</form>

После этого код (на JavaScript) должен перенаправлять на нужную страницу:
{второй список}.balkan.travel/{код языка первого списка (русский - ru, английский - en, сербский - rs)}
Буду очень благодарен за помощь!:thanks:

laimas 02.01.2019 16:11

Ну если выбор, это форма, а форма отправляется на сервер, то какое отношение к этому имеет Javascript, тут сервер должен мозгами шевелить, отдавая то, что просит клиент, анализируя данные пришедшей формы.

рони 02.01.2019 17:36

Мявчик Мявчине,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">

</head>

<body>
<form name="test">
<select>
<option>Српски</option>
<option>Русский</option>
<option>English</option>
</select>
<select>
<option>Tourist</option>
<option>Partners</option>
<option>Domens</option>
<option>Theatre</option>
</select>
<button type="submit">Open</button>
</form>
<script>

document.addEventListener('DOMContentLoaded', function() {
    var form = document.forms.test;
    form.addEventListener('submit',
    function() {
    var url = form[1].value + '.balkan.travel/' +   ['rs','ru','en'][form[0].selectedIndex]
    form.action = url;
    })
  });
</script>
</body>
</html>

laimas 02.01.2019 19:04

рони, зря, так как пользователю постоянно выбирать язык, это плохо. Клиент должен делать просто запрос в данном случае и ставить куку, что будет полезным. А сервер впредь отдавать все страницу с запросом языка установленного в куках, чтобы по ссылкам из поисковика страниц проиндексированных также выбирался нужный язык. А если нет кук, то язык по умолчанию.


Часовой пояс GMT +3, время: 23:25.