PHP从数组的下拉列表中删除空值

时间:2012-05-29 20:16:26

标签: php arrays drop-down-menu

我正在创建一个数组,然后使用php和html显示下拉列表的元素。数组的大小各不相同,所以我有一个foreach语句来显示它,问题是我无法弄清楚为什么下拉列表中的第一个值总是为空(我希望第一个值实际上来自我的数组)。这是代码,非常感谢任何帮助!

<html>
  <form id="form1" name="form1" method="post" onsubmit="" onreset="" action="thing.php">
<?php

$data = array();
$data[4] = 20.4541;
$data[5] = 32.5631;
$data[6] = 41.9715;
$data[7] = "text";
$data[10] = 2231;
$bestValue = 5;

echo " " . $key;
echo "<select name='dropdown'>";
echo "<option value=''></option>";

if($_POST['dropdown'] !=0){
    foreach($data AS $key=>$value) {
        $sel = '';
        if($key==$_POST['dropdown'] ) {
            $sel = "selected";
        }

        echo "<option value='".$key."' ".$sel.">".$key."</option>"; 
    }}      
else{

    foreach($data AS $key=>$value) {
        $sel = '';
        if($key==$bestValue ) {
                $sel = "selected";
        }
        echo $value;

        echo "<option value='".$key."' ".$sel.">".$key."</option>";             
    }}      

echo "</select>";


foreach($data AS $key2=>$value){
    if($_POST['dropdown'] == $key2){
    echo "  " . $data[$key2] . " degrees";}}
?>

<script>
function submitForm(action)
{
    document.getElementById('form1').action = action;
    document.getElementById('form1').submit();
}
</script>
<center>
<input type="button" onclick="submitForm('thing.php')" value="Find Angle" />
</center>

</html>

如您所见,下拉列表中的第一个值为空。我该如何删除?感谢。

2 个答案:

答案 0 :(得分:4)

只需删除第三条回音线。

echo "<option value=''></option>";

答案 1 :(得分:2)

您要打印的第一个选项是空选项。

 echo "<select name='dropdown'>";
 echo "<option value=''></option>";

删除行

echo "<option value=''></option>";