当您提交表单时(假设您的表单中有一个提交按钮),所有数据都将发送到 PHP,您将在 $_GET(全局变量)中检索所有数据
$_GET['sort']
将包含选定的值。
然后如果你想预先选择,你只需要在你的 HTML 中添加一些 PHP 代码
<option value="PriceLow" <?php echo ((!empty($_GET['sort']) && $_GET['sort'] == 'PriceLow') ? 'selected="selected"' : '') ?>>Price (Low to High)</option>
您必须对选择的每个选项执行相同的操作。这将允许您在第一次提交后预先选择好的选项。
解决方案2:
如果您不想在 HTML 代码中插入太多 PHP,您可以将发布的值存储在 javascript var 中,然后在加载 DOM 时选择好的选项(例如,使用像 jQuery 这样的好的 JS 库)
您的 HTML 代码:
<select name="sort" >
<option value="None">None</option>
<option value="PriceLow">Price (Low to High)</option>
<option value="PriceHigh">Price (High to Low)</option>
<option value="NameAZ">Name (A-Z)</option>
<option value="NameZA">Name (Z-A)</option>
</select>
以及标签中的一些 JS<script>
代码
// Need jQuery !
$(document).ready(function() {
// Generate the selected var in JS using the value in PHP
var selectedOption = '<?php echo $_GET['sort']; ?>';
// Select the selected option and append the selected attribute
$("select[name=sort] option[value=" + selectedOption + "]").attr('selected', 'selected');
});
加载页面后,此代码将自动选择好的选项。
信息:好处是您拥有更清晰和可维护的 HTML 代码。不好的一点是,如果客户端上没有启用 JavaScript,您的自动选择将不起作用(当您使用 PHP 在 HTML 中添加“选定”时,它总是会起作用)。因此,您必须评估利弊并做出选择。
注意:您可以将操作留空而不是“?”