1

Тема: Запомнить выбор в тэге option

Доброго всем дня! Обновляю мультиязычный сайт, язык меняется из списка без проблем.
Единственное, что после смены идет перезагрузка страницы, и выводится первое значение из списка.
Как заставить отображаться тот язык, который выбран?
Буду благодарен за подсказку

<select class="tt-select" name="forma" onchange="location = this.value;">
<option value="<?php echo htmlspecialchars(return_i18n_setlang_url('en')); ?>">ENG</option>
<option value="<?php echo htmlspecialchars(return_i18n_setlang_url('ru')); ?>">RUS</option>
<option value="<?php echo htmlspecialchars(return_i18n_setlang_url('de')); ?>">DEU</option>
<option value="<?php echo htmlspecialchars(return_i18n_setlang_url('es')); ?>">SPA</option>
</select>

Поделиться

2

Re: Запомнить выбор в тэге option

рекомендую для этого использовать localStorage
https://yandex.ru/search/?text=onChange … &lr=46

Поддержать GetSimple CMS по-русски ЯДом

Сайт olsv64

Поделиться

3

Re: Запомнить выбор в тэге option

То что нужно! Спасибо!

Поделиться

4

Re: Запомнить выбор в тэге option

Решение вопроса

<select class="tt-select" id="lang" name="forma" onchange="location = this.value;">
    <option <?php echo $_GET['setlang'] == "en" ? "selected" : "" ?> value="<?php echo htmlspecialchars(return_i18n_setlang_url('en')); ?>">ENG</option>
    <option <?php echo $_GET['setlang'] == "ru" ? "selected" : "" ?> value="<?php echo htmlspecialchars(return_i18n_setlang_url('ru')); ?>">RUS</option>
    <option <?php echo $_GET['setlang'] == "de" ? "selected" : "" ?> value="<?php echo htmlspecialchars(return_i18n_setlang_url('de')); ?>">DEU</option>
    <option <?php echo $_GET['setlang'] == "es" ? "selected" : "" ?> value="<?php echo htmlspecialchars(return_i18n_setlang_url('es')); ?>">SPA</option>
</select>

Вот этой стройкой для каждого языка все исправляется

<?php echo $_GET['setlang'] == "en" ? "selected" : "" ?>

Поделиться