Как изменить выбранное значение выпадающего списка на основе значения

#javascript

#javascript

Вопрос:

У меня есть требование, чтобы пользователь заполнял и отправлял форму. Если на стороне сервера обнаружены какие-либо ошибки, пользователю будет отображена та же форма, но теперь ранее выбранное значение выпадающего списка по умолчанию снова не выбрано. Я хочу, чтобы выбранное по умолчанию значение выпадающего списка основывалось на значении, выбранном пользователем ранее.

Ответ №1:

Код, который создает выпадающий список на сервере, должен проверять, отображается ли при печати параметров, если параметр соответствует выбранному пользователем параметру, для отметки «выбрано»

Ответ №2:

Вы собираетесь каким-то образом поддерживать состояние между обновлениями страницы.

Например, вы можете сохранить значение в файле cookie, пока пользователь заполняет форму, и когда страница обновляется (с ошибками), вы можете проверить значение и обработать его соответствующим образом.

Ответ №3:

Чтобы гарантировать, что выбранное значение по умолчанию всегда является ранее выбранным, вы можете перехватить выбранное значение в серверном скрипте, который получает форму. Затем сохраните это значение в переменной сеанса и сравните его позже с этим (внутри цикла, который создает выпадающий список) :

 if (isset($_SESSION["previousValue"])) {
    if ($value == $_SESSION["previousValue"]) {
        echo '<option value="$value" selected="selected">$value</option>';
    } else {
        echo '<option value="$value">$value</option>';
    }
}
 

Надеюсь, это поможет вам

Ответ №4:

какой язык на стороне сервера вы используете? это не похоже на проблему JavaScript, потому что после отправки страница обновляется, и вы выполняете проверку на стороне сервера, поэтому вы можете использовать POST Global vars для возврата значения или вы можете спросить меня с дополнительной информацией

Комментарии:

1. U и r — это буквы, а не слова. Если у вас недостаточно времени, чтобы написать три буквы, вам лучше вообще не отвечать ни на один вопрос.

2. извините за это, я отредактировал свой ответ и запомню это в будущем