2013-11-23 54 views
0

我的網站上有一個選擇下拉列表(www.irishbonus.comule.com/en/)。但是,當我從下拉列表中選擇一個選項並按提交時,我希望該選項保持選中狀態。 下面是選擇代碼:html選擇下拉菜單不會選擇

<form action="" method="post"> 
<strong> Select Subject:</strong> 
<select name="formSubject" class="dropdown"> 
    <option value=">>>">">>>"</option> 
    <option value="Accounting">Accounting</option> 
    <option value="Agricultural Science">Agricultural Science</option> 
    <option value="Agricultural Economics">Agricultural Economics</option> 
    <option value="Applied Mathematics">Applied Mathematics</option> 
    <option value="Arabic">Arabic</option> 
    <option value="Art (jc only)">Art (jc only)</option> 
    <option value="Biology">Biology</option> 
    <option value="Business (jc only)">Business (jc only)</option> 
    <option value="Business Studies">Business Studies</option> 
    <option value="Chemistry">Chemistry</option> 
    <option value="Civic (jc only)">Civic (jc only)</option> 
    <option value="Classical Studies">Classical Studies</option> 
    <option value="Construction Studies">Construction Studies</option> 

//more options 

    <option value="Typewriting (jc only)">Typewriting (jc only)</option> 
</select> 

<table width="300px"> 
<tr> 
<td valign="top"> 
<strong>Insert Mark:</strong> 
<input type="text" name="formMark" maxlength="2" size="4" value="<?=$mark;?>"/> 
</td> 
</tr> 
</table> 

<input type="submit" /> 
</form> 

回答

0

你需要使用服務器端語言這一點。您似乎已經在使用PHP,因此只需添加一些PHP代碼即可。最好的解決方案是將您的選項存儲在數組中,然後迭代數組,輸出<option>標記並添加selected屬性(如果值與提交的值相匹配)。

<select name="formSubject" class="dropdown"> 
<?php 
$options = ['Accounting', 'Agricultural Science', '...']; 
$selected = isset($_POST['formSubject']) ? $_POST['formSubject'] : ''; 
foreach($options as $option) { 
    echo '<option value="'.$option.'"'.($selected == $option ? ' selected' : '').'>'.$option.'</option>'; 
} 
?> 
</select> 
+0

所以我只是把我的選項的數組中,這可能工作? –

+0

我試圖把它放在(與選項),而不是舊的選擇菜單,即時通訊得到一個解析錯誤:/ –

0

他忘了陣列(),這就是爲什麼解析錯誤是有

這裏:

<select name="formSubject" class="dropdown"> 
<?php 
$options = array('Accounting', 'Agricultural Science', '...'); 
$selected = isset($_POST['formSubject']) ? $_POST['formSubject'] : ''; 
foreach($options as $option) { 
    echo '<option value="'.$option.'"'.($selected == $option ? ' selected' : '').'>'.$option.'</option>'; 
} 
?> 
</select> 
+0

我最終得到它的工作:

+0

函數input_value($ x){ if(isset($ _ POST [$ x])){ return $ _POST [$ x]; } else { return''; } } –

0
while ($row = $result->fetch_assoc()) { 

    $selected = ""; 
    if(isset($_GET['spec'])) { 
     if($_GET['spec'] == $row['id']) { 
      $selected = "selected='selected'"; 
     } 
    } 
    print "<option ". $selected ." value='". $row['id'] ."'>". $row['ime']. "</option>"; 
} 

$result->free();