2013-05-21 143 views
0

是否有可能將下拉列表中的第一項空白並默認選中,但是在下拉列表中選擇一項並點擊提交時,將該值保留在那裏。讓選項顯示空白,然後選擇提交保留值

這裏有一個例子

<form action="" method="post" /> 
<SELECT NAME="whatever" id="whatever"> 
<?php $selected = isset($_POST["whatever"]) && $_POST["whatever"] == 'whatever'; ?> 
<option value="" hidden="true" selected="selected"></option> 
<OPTION VALUE=1 onclick"selected='selected'">All</OPTION> 
</SELECT> 
<input type="submit" name="submit" value="Update"/> 
</form> 

目前如果我打提交它會改變選擇的值回空白。

+0

顯示一個空的選擇並隱藏它+顯示一個完整的選擇焦點可能會做到這一點...... – mplungjan

回答

0

U可以使用這樣

<form action="" method="post" /> 
<SELECT NAME="whatever" id="whatever"> 
<option value="">Select value</option> 
<OPTION VALUE=1 <?php if($_POST["whatever"]==1) echo "selected='selected'";?> >All</OPTION> 
<OPTION VALUE=2 <?php if($_POST["whatever"]==2) echo "selected='selected'";?> >Value One</OPTION> 
</SELECT> 
<input type="submit" name="submit" value="Update"/> 
</form> 
+0

你真棒,謝謝堆這個網站已經幫了很多。 – user2403705

0
function html_select($name, $options, $selected= "") 
{ 
    // open <select> tag, set id & name attributes 
    $select = "<select id=\"$name\" name=\"$name\">\n"; 

    // populate options to drop down list 
    foreach ($options as $value=> $html) { 
     $select .= "<option value=\"$value\""; 

     // select the selected option 
     if ($value == $selected) { 
      $select .= " selected=\"selected\""; 
     } 

     $select .= ">$html</option>\n"; 
    } 

    // close </select> tag 
    $select .= "</select>"; 

    // return element 
    return $select ; 
} 

echo html_select("whatever", array("" => "Select Value", "1" => "Value 1"), $_POST["whatever"]); 

我希望這幫助。