2011-05-02 40 views
0

在選擇框中突出顯示選項值如果記錄包含值爲狀態「Y」 iam循環並在選擇框中顯示選項比我必須顯示選項紅色我如何使用php

echo "<select name='select1' size='10' multiple >"; 
         foreach ($this->arr['record'] as $rows) { 
          if($rows['status'] == "Y"){ 
           echo "<option value='". $rows['COLA'] . '*' . $rows['COLB'] . "' bgcolor='#ff0000' style = 'bgcolor=red;font-size=5'>".$rows['COLC'].":".$rows['COLD'].":".$rows['COLE'].":".$rows['COLF'].":".$rows['COLG']."&nbsp;</option>"; 
          }else{ 
           echo "<option value='". $rows['COLA'] . '*' . $rows['COLB'] . "' bgcolor='#ff0000' style = 'bgcolor=red;font-size=5'>".$rows['COLC'].":".$rows['COLD'].":".$rows['COLE'].":".$rows['COLF'].":".$rows['COLG']."&nbsp;</option>"; 
          } 

         } 
echo "</select>"; 

這裏,如果我們的狀態爲「Y」,而不是我們要突出顯示的整個選項。我用字體標籤,但它不工作,你可以告訴我們該怎麼辦

回答

4

這與HTML,而不是PHP。設置<option>selected屬性。

你的情況:

if($rows['status'] == "Y") { 
    echo '<option selected="selected" .... 
} 
+0

Jason:我在哪寫 – Someone 2011-05-02 20:34:00

+0

明白了,但是我可以應用紅色選擇的顏色 – Someone 2011-05-02 20:35:26

+1

是的,這與CSS有關。但是,選擇元素的默認樣式很麻煩,因爲它們通常由操作系統而不是瀏覽器管理。 – 2011-05-02 20:42:44

0

請只看上生成的HTML源代碼。你的問題實際上與php無關。使用瀏覽器的源代碼視圖或使用螢火蟲來確定爲什麼你的html屬性/ css風格不適用。

0

德比,你正在使用風格屬性錯誤的方式。在style屬性裏面,你可以指定「inline」CSS,只要按照一般的CSS規則。

因此,要根據自己的需要將下面的代碼高亮顯示所選項目以紅色用途:

echo "<option value='". $rows['COLA'] . '*' . $rows['COLB'] . "' style='background-color: red; font-size: 5pt'>".$rows['COLC'].":".$rows['COLD'].":".$rows['COLE'].":".$rows['COLF'].":".$rows['COLG']."&nbsp;</option>"; 

但請注意,賈森已經說過,這下拉框通常由操作系統來處理,所以這種風格可能適用,但沒有官方的方式來設計下拉式元素。

有關如何使用內聯樣式表的更多信息,請參閱here