将selectmenu初始化为特定值的方法?

时间:2011-08-01 14:07:47

标签: php mysql html

我有一个屏幕,向用户显示玩家列表以及用户给出的等级。通过点击按钮,他们可以从玩家列表中进行选择并自行评分这些玩家。

我希望简化此过程,方法是让用户只需点击播放器名称即可进入评分页面,其中选择菜单已初始化为他们刚刚点击的播放器名称。

有没有办法将选择菜单初始化为某个值?

这是mySQL查询:

$query = @mysql_query('SELECT person.firstname, person.lastname, person.id FROM person inner join player ON player.person_id=person.id WHERE player.team_id=' . $homeid . ' ORDER BY lastname asc');

创建选择菜单的代码:

<select name='id'>
    <?php
        while ($temp = mysql_fetch_assoc($query)) {
            echo "<option value=" . $temp['id'] . ">" . htmlspecialchars($temp['firstname']) . " " . htmlspecialchars($temp['lastname']) . "</option>";
        }

    ?>
</select>

3 个答案:

答案 0 :(得分:2)

当然,,,您要选择的选项应包含属性selected

 if //bla bla this is the one
   echo "<option selected=\"selected\" value=" . $temp['id'] . ">" . htmlspecialchars($temp['firstname']) . " " . htmlspecialchars($temp['lastname']) . "</option>";
 else
   echo "<option value=" . $temp['id'] . ">" . htmlspecialchars($temp['firstname']) . " " . htmlspecialchars($temp['lastname']) . "</option>";  

答案 1 :(得分:2)

if (currentId == $temp['id']) <option selected>...</option>
else <option>...</option>

答案 2 :(得分:2)

如果您有一个名为$ id的值,您可以:

echo '<option value="'.$temp['id'].'" '.($temp['id'] == $id ? 'selected="selected"' : '').'>'.htmlspecialchars($temp['firstname']).' '.htmlspecialchars($temp['lastname']).'</option>';

差异:

($temp['id'] == $id ? 'selected="selected"' : '')

a上的选定属性在加载页面时预先选择此值。

我希望能理解你的问题。