[英]How to sort a select option according to user input
請我對如何實現此目標一無所知,因此我需要幫助。 我有以下代碼:
<select>
<option>Sunday</option>
<option>Monday</option>
/* this option goes down to Saturday */
</select>
用戶必須選擇一個插入數據庫的選項,假設用戶選擇了星期二並希望稍后對其進行編輯。 現在,我希望該選項在星期二顯示,例如:
<select>
<option>Sunday</option>
<option>Monday</option>
<option>Tuesday</option> /* this option will be the visible option before the user opens the selection */
</select>
我想通過PHP實現這一點,分配給輸出數據庫信息的變量為$day
因此$day = 'Tuesday';
請問我該如何實現?
為此,您可以在PHP中執行
<select>
<option <?PHP echo $day=='Sunday' ? '"selected=selected"' : ''); ?>>Sunday</option>
<option <?PHP echo $day=='Monday' ? '"selected=selected"' : ''); ?>>Monday</option>
<option <?PHP echo $day=='Tuesday' ? '"selected=selected"' : ''); ?>>Tuesday</option>
...
</select>
但是,如果選擇包含一周中的七天以上,它不是很好,並且很難編碼,更重要的是要維護 。
因此,使用日期名稱數組和foreach循環,以及$day
變量包含用戶選擇的日期。
<?php
$dow = array('Sunday','Monday','Tuesday','Wednesday',
'Thursday','Friday','Saturday');
?>
<select name="DayOfWeek">
<?php
foreach ( $dow as $d ) :
$sel = $d == $day ? 'selected="selected"' : '';
echo "<option $sel>$d</option>";
endforeach;
?>
</select>
您可以嘗試以下示例,並且可以申請所有選擇選項
<select>
<option <?PHP echo ($day=='Tuesday' ? selected : ""); ?>>Tuesday</option>
</select>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.