我有这样的表格:
<form method="post">
<fieldset>
<select name="taskOption" required>
<option value="" disabled selected>Choose group</option>
<?php
while($hej < count($hejsan)) {
echo '<option value=' . $hej . '>' . $hejsan[$hej] . '</option>';
$hej++;
}
?>
</select>
<input type="submit" value="Find bookings">
</fieldset>
</form>
当我按下提交按钮时,选择/选项将重置为默认值,如何更改此选项并使其保持为我选择的状态?
答案 0 :(得分:0)
您需要查看已选择的选项并进行相应的选项selected
。由于您的表单指向同一页面,因此您只需查看$_POST
。
P.S。:同样,您会发现在每个选项之后回显换行符以使输出更具可读性是有用的。
答案 1 :(得分:0)
试试这个:
<?php
$taskOption = '';
if (isset($_POST['taskOption']) {
$taskOption = $_POST['taskOption'];
}
?>
<form method="post">
<fieldset>
<select name="taskOption" required>
<option value="" disabled selected>Choose group</option>
<?php
while($hej < count($hejsan)) {
if ($hey == $taskOption) {
echo "<option value={$hey} selected>{$hejsan[$hej]}</option>";
} else {
echo "<option value={$hey}>{$hejsan[$hej]}</option>";
}
$hej++;
}
?>
</select>
<input type="submit" value="Find bookings">
</fieldset>
</form>
答案 2 :(得分:0)
在if if语句中。如果选项值等于select,则添加selected =“selected”
这是一个示例代码。可能是操作员错了,我总是与当时较大和较小的操作员混淆。
<?php
$option_value = 5;
for($i=0; $i > 10; $i++){
if($option_value == 5){
echo '<option value="'.$i.'" selected="selected">Item number'.$i.' is selected</option>';
} else {
echo '<option value="'.$i.'">Item number'.$i.'</option>';
}
}
?>
答案 3 :(得分:0)
试试这个
if (isset($_POST['taskOption'])) { $Option = $_POST['taskOption']; } while($hej < count($hejsan)) { if($hej==$_POST['taskOption']){ $selected = "selected=selected"; }else{ $selected = ""; } echo '<option value="' . $hej . '" '.$selected .'>' . $hejsan[$hej] . '</option>'; $hej++; }