我有以下代码,基本上是一个下拉菜单 . 当用户选择一个选项并提交选择时,将回显该值 . 选项值从MySQL表中获取 .
这是我的代码 .
<form name="hello" id="hello" method="post" action="chooser.php">
<select name="primaryCatResult" id="primaryCatResult" >
<?php
while ($result = $sqlUpdatePrimary->fetch()) {
$primary_category = $result['primary_category'];
?>
<option
value = "<?php echo $primary_category; ?>">
<?php echo $_POST['primary_category'] == $result['primary_category'] ?'selected="selected"' : '' ?>
<?php echo $primary_category; ?></option>";
<?php
}
?>
</select>
<input type="submit" type="submit"/>
</form>
<?php
//Record and display selection
if(isset($_POST['primaryCatResult'])){
echo $_POST['primaryCatResult'];
}
else {
echo 'Choose a primary category';
}
上面的表单按照需要工作,除了我想要在选择选项并提交表单后,我希望下拉菜单中的选择保持选中状态 .
我不相信这行代码:
<?php echo $_POST['primary_category'] == $result['primary_category'] ?'selected="selected"' : '' ?>
错误日志文件中不显示任何错误
3 回答
您的
<option>
关闭后才能输出是否已选中 . 在开始<option>
标记中关闭>
之前移动所选内容 . 您还需要使用字段名称(primaryCatResult
)代替列名primary_category
.应该是这样的:
试试这个
您在 Value 后关闭了该选项 . 不确定你的逻辑本身是否正常工作 .
你也可以做
selected
而不是selected="selected"
该概念应该有效,除了代码具有提取“选定”语句的额外括号 .