如何根据用户选择设置“下拉列表”默认值


How to set Dropdown List default value based on user selection

我有一个下拉列表。但是,我想根据用户选择设置默认值。因此缺省值不一致。我能做些什么来实现这个目标?我已经将$country = $_POST['country'];设置为用户选择。

<td>Country:</td>
<td colspan="2"><select name="country">
    <option value="93">93-Afghanistan</option>
    <option value="355">355-Albania</option>
    <option value="213">213-Algeria</option>
    <option value="1-684">1-684-American Samoa</option>
    <option value="376">376-Andorra</option>
    <option value="244">244-Angola</option>
    <option value="1-264">1-264-Anguilla</option>
    <option value="672">672-Antarctica</option>
    <option value="1-268">1-268-Antigua and Barbuda</option>
    <option value="54">54-Argentina</option>
    <option value="374">374-Armenia</option>
    <option value="297">297-Aruba</option>
    <option value="61">61-Australia</option>
</select>

添加。有超过200个选项(我从来没有列出所有),所以我希望得到一个方便的方法来实现这个

您可以使用'selected'作为相关选项

<option value="93" <?php if($country==93) echo "selected" ?> >93-Afghanistan</option>
<option value="355" <?php if($country==355) echo "selected" ?> >355-Albania</option> 

为每个选项添加if条件。

尝试使用session。

php代码:
session_start();
$_SESSION['selectedCountry'] = $_POST['country'];
然后你可以使用JQuery使下拉菜单被选中:
$(document).ready(function(){
             $(function() {
                $("#country").val("<?php echo $_SESSION['selectedCountry'];?>");
             });
    })

请试试这个…

HTML :-
        <td>Country:</td>
        <td colspan="2"><select id="country" name="country">
            <option value="93">93-Afghanistan</option>
            <option value="355">355-Albania</option>
            <option value="213">213-Algeria</option>
            <option value="1-684">1-684-American Samoa</option>
            <option value="376">376-Andorra</option>
            <option value="244">244-Angola</option>
            <option value="1-264">1-264-Anguilla</option>
            <option value="672">672-Antarctica</option>
            <option value="1-268">1-268-Antigua and Barbuda</option>
            <option value="54">54-Argentina</option>
            <option value="374">374-Armenia</option>
            <option value="297">297-Aruba</option>
            <option value="61">61-Australia</option>
        </select>
     </td>
JQuery

: -

     $(document).ready(function(){
         $(function() {
            $("#country").val("<?php echo $_POST['country'];?>");
         });
    })

试试这个…

    <?php
(isset($_POST["country"])) ? $country = $_POST["country"] : $country=93; 
?>
<form action='stackover.php' method='POST'>
<select id="country" name="country">
<option <?php if ($country == 93 ) echo 'selected' ; ?> value="93">93-Afghanistan</option>
<option <?php if ($country == 355 ) echo 'selected' ; ?> value="355">355-Albania</option>
<option <?php if ($country == 213 ) echo 'selected' ; ?> value="213">213-Algeria</option>
</select>
<input type="submit" value="Submit">
</form>