Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/241.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何保持从下拉列表中显示所选选项?_Php_Html_Forms - Fatal编程技术网

Php 如何保持从下拉列表中显示所选选项?

Php 如何保持从下拉列表中显示所选选项?,php,html,forms,Php,Html,Forms,我有一个下拉列表,可以在其中选择选项 <form action="" method="POST" class="styled-select"> <select name="seasons" onchange='this.form.submit()'> <option value="">Select a Season</option> <option value="1">2002/2003</option> <optio

我有一个下拉列表,可以在其中选择选项

<form action="" method="POST" class="styled-select">
<select name="seasons" onchange='this.form.submit()'>
<option value="">Select a Season</option>
<option value="1">2002/2003</option>
<option value="2">2003/2004</option>
<option value="3">2004/2005</option>
<option value="4">2005/2006</option>
<option value="5">2006/2007</option>
<option value="6">2007/2008</option>
<option value="7">2008/2009</option>
<option value="8">2009/2010</option>
<option value="9">2010/2011</option>
<option value="10">2011/2012</option>
<option value="11">2012/2013</option>
<option value="12">2013/2014</option>
</select>
<noscript><input type="submit" value="Submit"></noscript>
</form>

当我从列表中选择某项时,我希望列表中的选定项继续显示。当我选择(例如)2013/2014时,它将显示结果,但下拉菜单将返回其原始状态,而不是显示2013/2014

在获取过账值时选择选项值,如下所示

<option value="1" <?php if(isset($_POST['seasons']) && $_POST['seasons'] == '1'){ ?> selected="selected" <?php } ?>>2002/2003</option>
>2002/2003
为每个选项设置这样的值

您可以将“选定”属性设置为该选项,就像设置值一样

<option value="8" selected>2009/2010</option>
2009/2010

在PHP中使用if语句来确定应该选择哪一个。

这是因为页面会刷新

页面加载时,检查是否有post变量与每个选项的HTML值不匹配,并写入所选属性。

较短的方法是

<option value="1" <?php echo $_POST['seasons']==1?"selected":""; ?>2002/2003</option>

这是一个静态列表还是使用php填充列表?您正在提交表单onchange,因此DOM内容会被重新加载。因此,当再次呈现页面时,您需要手动将值设置为下拉列表。整个页面正在重新加载新内容。我正在使用PHP填充内容。这不是答案。你应该发表评论
<option value="1" <?php echo $_POST['seasons']==1?"selected":""; ?>2002/2003</option>