单击提交按钮后,在下拉列表中显示选定的值

时间:2016-09-09 03:34:59

标签: php

我需要帮助。我尝试了很多东西,但仍然没有得到它的解决方案。我想在用户单击提交按钮后显示下拉列表的选定值,但我尝试的所有内容都只显示下拉元素的第一个或最后一个值。我使用d..while循环来调出下拉列表的选项值。这是我的代码:

<p align="center">Class
<select name="class_code" size="1" id="class_code">

<?php
do{?>
  <option value="<?php echo $row_class_code['class_code']?>" $selected><?php echo $row_class_code['class_code']?></option>
<?php
} while ($row_class_code = mysql_fetch_assoc($class_code));
$rows = mysql_num_rows($class_code);
if($rows > 0) {
  mysql_data_seek($class_code, 0);
  $row_class_code = mysql_fetch_assoc($class_code);
}?>
</select>

<input type="submit" name="submit" id="submit" value="Proceed" />
</p>

请有人帮助我。

2 个答案:

答案 0 :(得分:0)

大概在提交时你在$_POST['class_code']中有所选的值 - 所以添加一个条件来检查并添加selected属性以匹配它的选项:

<select name="class_code" size="1" id="class_code">
    <?php
    do {
        $selected = (isset($_POST['class_code']) && $row_class_code['class_code'] == $_POST['class_code']);
        ?>
        <option value="<?php echo $row_class_code['class_code']?>"<?php if ($selected) { echo ' selected="selected"'; } ?>><?php echo $row_class_code['class_code']?></option>
        <?php
    } while ($row_class_code = mysql_fetch_assoc($class_code));
    $rows = mysql_num_rows($class_code);
    if ($rows > 0) {
        mysql_data_seek($class_code, 0);
        $row_class_code = mysql_fetch_assoc($class_code);
    }
    ?>
</select>

答案 1 :(得分:-1)

你使用jquery ajax。

$.ajax({
            url: "data.php",//file wich has query select to db table
            data: {id:theid},//describe your data here
            dataType: 'json',// type of data that will you get (JSON/HTML).
            type: 'POST',//sending type (POST/GET)
            success: function(data) {
               showingOption();
            }
        });

然后,为了选择您可以选择的选项:

$("select[name=class_code]>option[value=" + id + "]").attr("selected", "selected");

Goodluck for you