我有一个动态生成的下拉列表 - 课程标识符和名称列表。在变量“assigned_course_id”的基础上,我想从下拉列表中预先选择适当的值。我最好的尝试如下。在此先感谢您的帮助。
<select name="course_id" id="course_id">
<?php
$assigned_course_id = $assignment['course_id'];
foreach($courses as $course) { ?>
<option value="<?= $course['course_id']?><?php if ($assigned_course_id == $course['course_id']) echo "selected"; ?>"><?= $course['course_name'] ?></option>
<?php } ?>
</select>
答案 0 :(得分:1)
这是因为您没有结束value
属性,因此您选择的选项变为<option value="optionvalueselected"
- &#39; optionvalue&#39;是您所选选项的价值,并且已选择&#39;是您想要设置的属性,但由于您从未结束value
以下内容应该有效:
<select name="course_id" id="course_id">
<?php
$assigned_course_id = $assignment['course_id'];
foreach($courses as $course) { ?>
<option value="<?= $course['course_id']?>" <?php if ($assigned_course_id == $course['course_id']) { echo "selected"; } ?>><?= $course['course_name'] ?></option>
<?php } ?>
</select>
答案 1 :(得分:0)
我认为这将完成工作
<select name="course_id" id="course_id">
<?php
$assigned_course_id = $assignment['course_id'];
foreach($courses as $course) {
$selected = "";
if ($assigned_course_id == $course['course_id']) {
$selected = "selected";
}
echo '<option value="'.$course['course_id'].'" '.$selected.'> '.$course['course_name'] .'</option>';
} ?>
</select>