0

所以我做了这个汽车统计计算模块,在做一些计算后返回显示结果,然后在我的表单中显示我计算过的汽车作为预选。

为此,我在 php 中创建了一个函数,可以在我的 html 中使用:

function biler () {                         
    while($row = mysql_fetch_array($result)) {
       if ($row['reg'] == $_GET['bil']){
           $selected = 'selected="selected"';
       }                    
       echo '<option '.$selected.' value="'.$row['reg'].'">'.$row['reg'].'</option>';
    }
}

运行函数的 HTML:

<form method="post" name="regnskab" action="regnskab_beregn.php">
   <select name="bil"><? biler(); ?></select>
</form>

我的问题是没有预先选择汽车,因为它们都有选择语句:/

回报:

<select name="bil">
  <option selected="selected" value="OHO1241">OHO1241</option>
  <option selected="selected" value="QTX2314">QTX2314</option>
  <option selected="selected" value="QW20301">QW20301</option>
</select>
4

2 回答 2

3

您需要在使用后清除$selected变量,否则它将始终包含该值:

while($row = mysql_fetch_array($result)) {
   $selected = "";
   if ($row['reg'] == $_GET['bil']){
       $selected = 'selected="selected"';
   }                    
   echo '<option '.$selected.' value="'.$row['reg'].'">'.$row['reg'].'</option>';
}
于 2013-03-11T13:33:27.423 回答
0

一旦你$selected的设置,它仍然存在。我的例子

    function biler () {                         
        while($row = mysql_fetch_array($result)) {
           if ($row['reg'] == $_GET['bil']){
               $selected = 'selected="selected"';
           }          
           else
           {
               $selected = "";
           }          
           echo '<option '.$selected.' value="'.$row['reg'].'">'.$row['reg'].'</option>';
        }
    }
于 2013-03-11T13:36:20.153 回答