重新加载</select>后,HTML <select>选项正在更改

时间:2015-02-06 17:45:04

标签: php html select options

我的选择存在一个小问题。当我设置第二个,第三个或另一个选项而不是第一个选项时,我的选择设置为页面重新加载后的第一个选项。我想保存选择的选项。这是代码:

echo '<select name="sort" id="sort" onchange="document.location = this.value">';
echo '<option value="?kategoria='.$_GET['kategoria'].'&sort=nameup">Sort by name up</option>';
echo '<option value="?kategoria='.$_GET['kategoria'].'&sort=namedown">Sort by name down</option>';
echo '<option value="?kategoria='.$_GET['kategoria'].'&sort=priceup">Sort by price up</option>';
echo '<option value="?kategoria='.$_GET['kategoria'].'&sort=pricedown">Sort by price down</option>';
echo '<option value="?kategoria='.$_GET['kategoria'].'&sort=amountup">Sort by amount up</option>';
echo '<option value="?kategoria='.$_GET['kategoria'].'&sort=amountdown">Sort by amount down</option>';
echo '</select>';

1 个答案:

答案 0 :(得分:2)

您的问题是您的网页正在重新加载,无论您选择什么,第一个选项都将自动选中。

您需要在PHP中添加一些逻辑,说明如果选择了这个逻辑,请将此选项设置为selected="selected"

例如:

echo '<option value="?kategoria='.$_GET['kategoria'].'&sort=amountup"';
if ($_GET['sort'] == 'amountup') {
   echo ' selected="selected"';
}
echo '>Sort by amount up</option>';

你可以清理一些,但这是它的基本要点。