2013-05-26 64 views
0

我使用PHP來生成一個HTML網頁表單的選擇菜單如下:查看源文件生成的HTML選擇菜單

$foods = array( 
    '1' => 'fruit', 
    '2' => 'pizza', 
    '3' => 'bread', 
    '4' => 'nuts', 
); 

這裏的HTML代碼中選擇輸入:

<select id="food" name="food"> 
    <option value="*">- No Selection - </option> 
    <?php 
     $output = ""; 
     $selected = false; 

     foreach($foods as $food => $value) { 
      $food = htmlspecialchars($food); 
      $output .= "<option value=\"$food\""; 
      if ($food == $pcSymptomSearch) { 
       $selected = true; 
       $output .= " selected"; 
      } 
      $output .= ">$value</option>"; 
     } 
     echo $output; 
    ?> 
</select> 

我觀看在Safari/Mac OS X的源,通過PHP產生的選擇輸入顯示在一行像這樣,這使得讀/調試有點棘手時注意到:

<option value="1">fruit</option><option value="2">pizza</option><option value="3">bread</option><option value="4">nuts</option>      </select> 

有沒有一種方法,使每個選項上出現這樣一行:

<option value="1">fruit</option> 
    <option value="2">pizza</option> 
    <option value="3">bread</option> 
    <option value="4">nuts</option>      
</select> 
+2

是的,你可以試試這個:'$ output。=「> $ value \ n \ t \ t \ t」;'。但是,真的,它不需要... – 2013-05-26 15:23:28

+0

你知道'Firebug'工具嗎?例如,對於Safari,您可以使用這樣的解決方案:http://stackoverflow.com/questions/3648866/firebug-like-plugin-for-safari-browser –

回答

2

所有你需要做的就是當你建立你的字符串輸出添加一個\n(換行符)每一個新行將是適當的地方。

$output .= ">$value</option>\n"; 
1

替換:

$output .= ">$value</option>"; 

$output .= ">$value</option>\n";