0

我有一个表格,其中包含从数据库生成的国家/地区的下拉列表。这些值存储在数据库中。有一个选项,用户可以在其中查看或更新插入的值。从数据库中获取更新所有表单值。我需要的是,当加载表单以更新国家下拉列表的选定选项时,必须是存储在数据库中的选项。例如:如果从以下下拉选项中选择 2 并将其插入数据库。

 Dropdown: |option1|<selected>
           |option2|
           |option3|

在更新期间应该是这样的

 Dropdown: |option1|
           |option2|<selected>
           |option3|

这是我尝试过的代码。

      $selected = $list["country_country_name"];

     <tr><td>Country</td><td><select onchange="getCountry(this.value);" name="country" id="country" ><?php  foreach( $query as $qry ) { 
     print '<option value="'.$qry["country_country_name"].'"'; 
     if( $qry["country_country_name"] == $selected ) print'selected'; 
     print '>'.$qry["country_country_name"].'</option>'."\n";} ?>
     </select></td></tr>
4

3 回答 3

1
<select id="list" name="list">
    <option value=""> Please Select </option>
    <?
        $list = array('1',
                        '2',
                        '3',
                        '4',
                        '5',
                        '6');

        while ($L = array_shift($list)) {
            ?>
                <option value="<?=$L?>" <? if($selected == $L){ echo 'selected="selected"'; }?> > 
                    <?= $L ?> 
                </option> 
            <?
         }
    ?>
</select>

您可以通过以下方式简单地获取所选选项:

$("#list").val();

请尝试。

于 2012-10-09T12:03:51.323 回答
0

$selected = $list["country_country_name"];

 <tr><td>Country</td>
 <td>
 <select onchange="getCountry(this.value);" name="country" id="country" >
 <?php  foreach( $query as $qry ) { 
    $sel = '';
   if( $qry["country_country_name"] == $selected ) 
    $sel = 'selected="selected"';           

    echo '<option value="'.$qry["country_country_name"].'" '.$sel.'>'.$qry["country_country_name"].'</option>'."\n";
    } ?>
    </select>
    <?php echo form_error('country'); ?>
    </td>
 </tr>
于 2012-10-09T12:00:51.637 回答
0

当您的选项标签的value属性包含与选项文本相同的值时,值属性不是必需的——所以省略它。

下面显示了一个内联条件语句。

<tr>
    <td>Country</td>
    <td><select onchange="getCountry(this.value);" name="country" id="country">
        <?php
        foreach ($query as $row) { 
            echo "<option" ,
                ($row["country_country_name"] == $list['country_country_name'] ? ' selected' : '') ,
                "{$row['country_country_name']}</option>\n";
        }
        ?>
    </select></td>
</tr>
于 2018-10-25T10:30:51.073 回答