以下代码生成一个动态下拉框。
<select name="parent">
<?php
$q = $admindb->getParentCategories();
while($row=mysql_fetch_assoc($q)){
$title=$row['title'];
$catid=$row['id'];
?>
<option value="<?php echo $catid; ?>"><?php echo $title; ?></option>
<?php
}
?>
</select>
但是,如果将表单返回给具有验证错误的用户, 我需要这个盒子来记住以前的选择..
使用文本框时,我使用以下代码记住条目..
<input type="text" name="title" value="<?php echo $form->value("title"); ?>">
如何将该值标记中的内容添加到选择代码中?
由于
答案 0 :(得分:1)
您必须使用selected
属性:
<option value="<?php echo $catid; ?>"
<?php if ($_GET['parent'] === $catid): echo 'selected'?>><?php echo $title; ?></option>
如果您编写XHTML,请使用selected="selected"
。
答案 1 :(得分:1)
将您的option
行更改为:
<option value="<?php echo $catid; ?>"<?php if($catid == $form->value("fieldname") echo 'selected="selected"'; ?>><?php echo $title; ?></option>
答案 2 :(得分:1)
您需要将selected="true"
添加到正确的选项中,如下所示:
<select name="parent">
<?php
$q = $admindb->getParentCategories();
while($row=mysql_fetch_assoc($q)){
$title=$row['title'];
$catid=$row['id'];
?>
<option value="<?php echo $catid; ?>" <?php if ($catid == $form->value("title")) { echo ' selected="true"';} ?>><?php echo $title; ?></option>
<?php
}
?>
</select>