如果我的表单中有错误,如何添加selected = selected来保存我的下拉列表?

时间:2015-05-28 03:06:12

标签: javascript php

我有两个php文件,一个是类my_class 在其中有一个名为dropit()的函数

此功能看起来像

@res = DataBase::database("select id, name,image from product");
echo "<option value="0">Select one</option>";
if($res){
    foreach($res as $value){
        echo "<option value='{$value[id]}' data-image='{$value['image']}'>{$value['name']} -- {$value['id']}</option>"
    }
}
echo "</select>"

然后在我的索引php中,我有一个使用

填充的下拉列表
<?php my_class::dropit(); ?>

如果我的表单中有错误,我希望下拉列表保留在所选项目上

1 个答案:

答案 0 :(得分:0)

您可以检查您的选择值是否在$_POST中,并在foreach()循环中检查它是否与当前值匹配。

@res = DataBase::database("select id, name,image from product");
echo "<option value="0">Select one</option>";
if($res){
    foreach($res as $value){
        $selected = isset($_POST['nameofyourselect']) && $_POST['nameofyourselect'] == $value[id]) ? " selected='selected'" : "";
        echo "<option value='{$value[id]}' data-image='{$value['image']}'{$selected}>{$value['name']} -- {$value['id']}</option>"
    }
}
echo "</select>"