我如何记住表单提交时的下拉选择?

How can I remember dropdown selection on form submit?

在表单提交时,我希望记住我的所有输入字段,输入和文本区域已经可以使用,但我无法让这个选择正常工作。

这是我的选择

<select name="signalering">
    <option value="Bezoek" selected>Bezoek</option>
    <option value="Meerwerk">Meerwerk</option>
    <option value="Stelpost">Stelpost</option>
    <option value="Verrekenpost">Verrekenpost</option>
    <option value="Levering">Levering</option>
    <option value="Aandachtspunt">Aandachtspunt</option>
    <option value="Tekortkoming">Tekortkoming</option>
    <option value="Opname werk">Opname werk</option>
    <option value="Overig">Overig</option>
</select>

如果有人知道一个简单的解决方案来记住这个下拉选项,我会很高兴:)

我猜你在发帖,只需在页面顶部粘贴一个脚本,检查该值是否存在并相应地循环遍历它

if( isset($_POST['value']) )
    {
     //do loop here
}else{
     //output default select code
}

您可以在提交这些标签时进行检查。检查提交的值是否等于该值,然后回显selected attribute:

粗略示例:

<?php $options = array('Bezoek', 'Meerwerk', 'Stelpost', 'Verrekenpost', 'Levering', 'Aandachtspunt', 'Tekortkoming', 'Opname werk', 'Overig'); ?>
<select name="signalering" onchange="this.form.submit()">
<?php foreach($options as $option): ?>
    <option value="<?php echo $option; ?>" <?php echo (isset($_POST['signalering']) && $_POST['signalering'] == $option) ? 'selected' : ''; ?>>
        <?php echo $option; ?>
    </option>
<?php endforeach; ?>
</select>

Sample Output

旁注:这只是一个例子。 select 标签上不需要 onchange="this.form.submit()"

<form id="form" name="form" action="" method="post" enctype="multipart/form-data">

    <?php 
        $signalering = addslashes(trim($_POST['signalering']));
        $options = array('Bezoek', 'Meerwerk', 'Stelpost', 'Verrekenpost', 'Levering', 'Aandachtspunt', 'Tekortkoming', 'Opname werk', 'Overig'); 
        $sel_output = '<select name="signalering" onChange="this.form.submit()">';
        $sel_output .= '<option value="">Select</option>';
        foreach($options as $option)
        {
            if($signalering == $option){$selcted = 'selected';}else{$selcted = '';}
            $sel_output .= '<option value="'.$option.'" '.$selcted.'>'.$option.'</option>';
        }
        $sel_output .= '</select>';

        echo $sel_output;
    ?>
</form>