我還沒有確定如何正確地說出問題 - 但這只是出於真正的興趣而已。不斷,我不得不從數據庫加載信息,並預先填充一個表單。因此,在文本框的情況下,它很容易,我只需設定值:如何從數據庫中選擇<select>語句?
<input type="text" value="<?=$foo;?>" name="foobar">
然而,當我來選擇框中找到我的代碼變得相當草率,因爲我需要放置selected
值某處的線路。因此,其實我有兩個選擇,這兩者我不喜歡:
$one = $two = "";
switch ($myval) {
case "1": $one = " selected";
case "2": $two = " selected";
}
然後在HTML:
<select name="myval">
<option value="1"<?=$one;?>>One</option>
<option value="1"<?=$two;?>>Two</option>
</select>
或另一個選項是將一個速記,如果在選擇的中間聲明:
<select name="myval">
<option value="1"<?=($myval=="1") ? " selected" : "";?>>One</option>
<option value="1"<?=($myval=="2") ? " selected" : "";?>>Two</option>
</select>
看起來稍微更乾淨,但它仍然讓我感到困擾。
任何人有這樣做的任何多比較有效的方法呢?當它僅僅是一個Yes/No
下拉框,我必須爲每個值寫愚蠢的if語句。
同樣的問題也適用於複選框。
IF語句不'在這種情況下stupid' – Gntem 2012-08-07 10:46:42
它只是似乎有點對於這樣一個簡單的任務來說是漫長而無意義 – Chud37 2012-08-07 10:48:09
我認爲你指定的最後一個選項更好 – WatsMyName 2012-08-07 10:48:29