0

我正在使用两种下拉菜单。是/否和一个具有多个值。无论哪种方式,我都使用这个:

<select id="active">
    <option value="0">No</option>
    <option value="1">Yes</option>
</select>

或者

<select id="active">
    <option value="1">Choice 1</option>
    <option value="2">Choice 2</option>
    <option value="3">Choice 3</option>
    <option value="4">Choice 4</option>
</select>

Yes/No 的值在我的 mysql-db 中存储为位(之前为 tinyint)。我存储为 int 的多项选择。我从对象 $member 中获取值并尝试选择正确的值:

<option value="0" <?php echo $member->active == 0 ? 'selected="selected"' : 'selected="unselected"'; ?>>Yes</option>
<option value="1" <?php echo $member->active == 1 ? 'selected="selected"' : 'selected="unselected"'; ?>>Yes</option>

当我将多项选择存储为 int 而不是将 Yes/No 存储为 bit 或 tinyint 时,这非常有效。

我究竟做错了什么?$member->active 的值是对的。我知道是/否可以通过复选框来完成,但我不会先解决这个问题。

谢谢

4

1 回答 1

1

提供答案并假设您已经加载了适当的数据并将其存储到任何类/对象 $member 中。

<option value="0" <?php echo $member->active == 0 ? 'selected="selected"' : ''; ?>>No</option>
<option value="1" <?php echo $member->active == 1 ? 'selected="selected"' : ''; ?>>Yes</option>
于 2013-09-25T14:16:38.770 回答