javascript - 在php中提交后如何保留动态选择的值

标签 javascript php html

我有这个代码

<select id="menu" name="department">
    <?php
        //Get the departments and create the select menu dynamically
        include 'connect.php';
        $query = "SELECT* FROM department;";
        $result = mysqli_query($link,$query);
        $html = "";
        if($result){
            while ($obj = mysqli_fetch_object($result)) {
                $html.='<option value="'.$obj->dept_name.'">'.$obj->dept_name.'</option>';
            }
        } else {$html.='<p style="color:red;text-align:center">Θεμελιώδες λάθος κατά την ανάκτηση των τμημάτων</p>';}
            print $html;    
            mysqli_close($link);
        ?>
        </select>
        <?php
            if (isset($_POST['menu']))
                print '<script type="text/javascript">document.getElementById("menu").value = "'.$_POST['menu'].'";</script>';
        ?>

它嵌套在动态创建选择菜单的表单标记中,我想在提交后保留所选值。这不起作用。有什么想法吗?

最佳答案

在创建选项时动态添加代码以保留选择的后值,例如,

$html .= '<option value="'.$obj->dept_name.'"';

if(isset($_POST['department']) && $_POST['department'] == $obj->dept_name){
  $html .= ' selected ';
}

$html .= '>'.$obj->dept_name.'</option>';

关于javascript - 在php中提交后如何保留动态选择的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24825105/

相关文章:

php - foreach 循环图像水平显示

html - 如何删除div之间的空间?

html - Bootstrap v4-Alpha 6 | .float-lg-right 不工作

javascript - 您如何在整个网站上组织大型 JS/jQuery 代码库?

javascript - 如何根据当前 URL 指定 HTTP 或 HTTPS?

javascript - 从 Angular $http 获取 promise 数据

php - 我应该使用 Regex 来解析我的文件,还是有更好的方法?

php - 避免 PHP 中重复的 ID

c# - ASP.NET GridView : Highlighting rows on mouse over then updating the highlighted rows

PHP Sum 数组 - 仅从 DB 获得第一个结果