【问题标题】:Selected choice disappears in dropdown PHP - No AJAX所选选项在下拉 PHP 中消失 - 无 AJAX
【发布时间】:2022-01-08 11:16:13
【问题描述】:

我在下拉菜单中选择的任何内容都会立即从我的屏幕上消失。知道如何解决这个问题吗?

<?php
    include "includes/Get_clubs.inc.php";
?>

<body>
    <div class="club-wijzigen">
        <form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']) ?>" method="post">
            <div class="club-wijzigen-main-left">
                <label class="club-wijzigen-label-1">Club :</label>

                <select id="club_list" name="club_naam" class="club-list" onchange="this.form.submit()">
                    <option value="">--- Select ---</option>
                    <?php
                        foreach ($result_array_all_clubs as $club) {   //  Data from "includes/Get_clubs.inc.php"
                            $club_name = $club['Naam'];
                            $club_nr = $club['Stamnummer'];
                            echo "<option value='" . $club_nr . "'>" . $club_name . "</option>";
                        }
                    ?>
                </select>

           </div>
      </form>
   </div>
</body>
<?php
    if(isset($_POST["club_naam"])){
        $clubname_chosen = $_POST["club_naam"];
        echo "<br>CLUB CHOSEN : " . $clubname_chosen . "<br>";
?>

问题是,我想,每次在下拉列表中选择一个新选项时,页面都会重新加载,这意味着下拉列表会再次被重新填充。

我搜索了答案,但没有 AJAX 没有出现。我试过了:

<option value=""><?php echo $club_name ?></option>

<option value="?php echo $club_name ?"></option>

但没有成功。非常感谢所有帮助!

【问题讨论】:

  • 更改下拉列表的值后页面不应重新加载,您使用的是什么浏览器?你用过什么JS吗?
  • 我正在使用 Chrome。没有JS可以吗?
  • 你想完成什么?
  • PHP 是后端编程语言,也就是说,一旦页面被加载,php 本身无法对页面做任何事情,直到你重新加载它。
  • 最后,我想根据第一个下拉列表中的选择填充第二个下拉列表。但我什至无法解决上述问题,这只是填充一个下拉列表并回显所选选项。

标签: php post methods dropdown populate


【解决方案1】:

也许 HTML 中的数组对你有用。

<form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']) ?>" method="post">
    <div class="club-wijzigen-main-left">
        <label class="club-wijzigen-label-1">Club :</label>

        <?php if(isset($_POST[club_naam])){ foreach ($_POST[club_naam] as $club_naam){ ?>
            <input type="hidden" name="club_naam[]" value="<?=$club_naam?>" />
        <?php }} ?>

        <select id="club_list" name="club_naam[]" class="club-list" onchange="this.form.submit()">
            <option value="">--- Select ---</option>
            <?php foreach ($result_array_all_clubs as $club) {   //  Data from "includes/Get_clubs.inc.php"
                $club_name = $club['Naam'];
                $club_nr = $club['Stamnummer'];
                echo "<option value='" . $club_nr . "'>" . $club_name . "</option>";
            } ?>
        </select>

   </div>
</form>


<?php
if(isset($_POST["club_naam"])){

    foreach($_POST["club_naam"] as $key => $club_naam){
        echo "<br>CLUB CHOSEN " . ($key + 1) . " : " . $club_naam . "<br>";
    }

}
?>

【讨论】:

    猜你喜欢
    • 2021-07-07
    • 1970-01-01
    • 1970-01-01
    • 2019-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多