Вот небольшой фрагмент кода, который работает несколько хорошо, но не совсем то, чего я пытаюсь достичь:
<html>
<head>
</head>
<body>
<form method='post'>
Display
<select name="displayOptions" onchange="this.form.submit()">
<option selected value="all">all</option>
<option value="open">open</option>
<option value="reserved">reserved</option>
<option value="blocked">blocked</option>
</select> computers
</form>
<?php
if(isset($_POST["displayOptions"])){
if ($_POST["displayOptions"]=='all')
allFunction();
if ($_POST["displayOptions"]=='open')
openFunction();
etc...
}
?>
</body>
</html>
Как только пользователь выбирает раскрывающийся список, я хочу, чтобы действие было выполнено. Я также хочу, чтобы действие по умолчанию было «все», и чтобы это происходило сразу после загрузки формы. Приведенный выше фрагмент кода работает хорошо, за исключением двух вещей.
- 'all' выбрано по умолчанию (Работает как задумано), однако allFunction () не запускается. Даже если вы выберете другой вариант, а затем снова выберете «все», «все» все равно не сработает. Я бы хотел, чтобы allFunction запускался, как только эта форма загружается с выбранным 'all' и, конечно, чтобы иметь возможность снова выбрать 'all' позже.
- Когда выбирается другой выбор, он загружается правильная функция (WAI), однако раскрывающийся список возвращается ко всем. Я знаю, почему он это делает (потому что страница перезагружается, а по умолчанию выбрано значение «all»), но я бы хотел, чтобы он оставался на выбранной опции!
Когда я набирал out У меня такое чувство, что я могу решить №2 с помощью переменной $ _SESSION, но я все еще не понимаю, почему первый вариант в раскрывающемся списке выбора не регистрируется.