電商結帳、表單收集地址時常需州/省下拉選單。本文提供即用型 PHP 程式碼:包含完整 50 州選項,支援 $state 變數自動比對並輸出 selected 屬性。
<select name="state" id="state"> <option value="AL" <?php if($state=="AL") echo "selected"; ?>>Alabama</option> <option value="AK" <?php if($state=="AK") echo "selected"; ?>>Alaska</option> <option value="AZ" <?php if($state=="AZ") echo "selected"; ?>>Arizona</option> <option value="AR" <?php if($state=="AR") echo "selected"; ?>>Arkansas</option> <option value="CA" <?php if($state=="CA") echo "selected"; ?>>California</option> <option value="CO" <?php if($state=="CO") echo "selected"; ?>>Colorado</option> <option value="CT" <?php if($state=="CT") echo "selected"; ?>>Connecticut</option> <option value="DE" <?php if($state=="DE") echo "selected"; ?>>Delaware</option> <option value="DC" <?php if($state=="DC") echo "selected"; ?>>District of Columbia</option> <option value="FL" <?php if($state=="FL") echo "selected"; ?>>Florida</option> <option value="GA" <?php if($state=="GA") echo "selected"; ?>>Georgia</option> <option value="HI" <?php if($state=="HI") echo "selected"; ?>>Hawaii</option> <option value="ID" <?php if($state=="ID") echo "selected"; ?>>Idaho</option> <option value="IL" <?php if($state=="IL") echo "selected"; ?>>Illinois</option> <option value="IN" <?php if($state=="IN") echo "selected"; ?>>Indiana</option> <option value="IA" <?php if($state=="IA") echo "selected"; ?>>Iowa</option> <option value="KS" <?php if($state=="KS") echo "selected"; ?>>Kansas</option> <option value="KY" <?php if($state=="KY") echo "selected"; ?>>Kentucky</option> <option value="LA" <?php if($state=="LA") echo "selected"; ?>>Louisiana</option> <option value="ME" <?php if($state=="ME") echo "selected"; ?>>Maine</option> <option value="MD" <?php if($state=="MD") echo "selected"; ?>>Maryland</option> <option value="MA" <?php if($state=="MA") echo "selected"; ?>>Massachusetts</option> <option value="MI" <?php if($state=="MI") echo "selected"; ?>>Michigan</option> <option value="MN" <?php if($state=="MN") echo "selected"; ?>>Minnesota</option> <option value="MS" <?php if($state=="MS") echo "selected"; ?>>Mississippi</option> <option value="MO" <?php if($state=="MO") echo "selected"; ?>>Missouri</option> <option value="MT" <?php if($state=="MT") echo "selected"; ?>>Montana</option> <option value="NE" <?php if($state=="NE") echo "selected"; ?>>Nebraska</option> <option value="NV" <?php if($state=="NV") echo "selected"; ?>>Nevada</option> <option value="NH" <?php if($state=="NH") echo "selected"; ?>>New Hampshire</option> <option value="NJ" <?php if($state=="NJ") echo "selected"; ?>>New Jersey</option> <option value="NM" <?php if($state=="NM") echo "selected"; ?>>New Mexico</option> <option value="NY" <?php if($state=="NY") echo "selected"; ?>>New York</option> <option value="NC" <?php if($state=="NC") echo "selected"; ?>>North Carolina</option> <option value="ND" <?php if($state=="ND") echo "selected"; ?>>North Dakota</option> <option value="OH" <?php if($state=="OH") echo "selected"; ?>>Ohio</option> <option value="OK" <?php if($state=="OK") echo "selected"; ?>>Oklahoma</option> <option value="OR" <?php if($state=="OR") echo "selected"; ?>>Oregon</option> <option value="PA" <?php if($state=="PA") echo "selected"; ?>>Pennsylvania</option> <option value="RI" <?php if($state=="RI") echo "selected"; ?>>Rhode Island</option> <option value="SC" <?php if($state=="SC") echo "selected"; ?>>South Carolina</option> <option value="SD" <?php if($state=="SD") echo "selected"; ?>>South Dakota</option> <option value="TN" <?php if($state=="TN") echo "selected"; ?>>Tennessee</option> <option value="TX" <?php if($state=="TX") echo "selected"; ?>>Texas</option> <option value="UT" <?php if($state=="UT") echo "selected"; ?>>Utah</option> <option value="VT" <?php if($state=="VT") echo "selected"; ?>>Vermont</option> <option value="VA" <?php if($state=="VA") echo "selected"; ?>>Virginia</option> <option value="WA" <?php if($state=="WA") echo "selected"; ?>>Washington</option> <option value="WV" <?php if($state=="WV") echo "selected"; ?>>West Virginia</option> <option value="WI" <?php if($state=="WI") echo "selected"; ?>>Wisconsin</option> <option value="WY" <?php if($state=="WY") echo "selected"; ?>>Wyoming</option> </select>
$usStates = [
'AL' => 'Alabama', 'AK' => 'Alaska', 'AZ' => 'Arizona', 'AR' => 'Arkansas',
'CA' => 'California', 'CO' => 'Colorado', 'CT' => 'Connecticut', 'DE' => 'Delaware',
'DC' => 'District of Columbia', 'FL' => 'Florida', 'GA' => 'Georgia', 'HI' => 'Hawaii',
'ID' => 'Idaho', 'IL' => 'Illinois', 'IN' => 'Indiana', 'IA' => 'Iowa',
'KS' => 'Kansas', 'KY' => 'Kentucky', 'LA' => 'Louisiana', 'ME' => 'Maine',
'MD' => 'Maryland', 'MA' => 'Massachusetts', 'MI' => 'Michigan', 'MN' => 'Minnesota',
'MS' => 'Mississippi', 'MO' => 'Missouri', 'MT' => 'Montana', 'NE' => 'Nebraska',
'NV' => 'Nevada', 'NH' => 'New Hampshire', 'NJ' => 'New Jersey', 'NM' => 'New Mexico',
'NY' => 'New York', 'NC' => 'North Carolina', 'ND' => 'North Dakota', 'OH' => 'Ohio',
'OK' => 'Oklahoma', 'OR' => 'Oregon', 'PA' => 'Pennsylvania', 'RI' => 'Rhode Island',
'SC' => 'South Carolina', 'SD' => 'South Dakota', 'TN' => 'Tennessee', 'TX' => 'Texas',
'UT' => 'Utah', 'VT' => 'Vermont', 'VA' => 'Virginia', 'WA' => 'Washington',
'WV' => 'West Virginia', 'WI' => 'Wisconsin', 'WY' => 'Wyoming',
];
function renderStateSelect($name, $selected = '', $attr = '') {
global $usStates;
$html = "";
return $html;
}
// 使用
echo renderStateSelect('state', $state, 'class="form-control"');
同樣模式定義 $caProvinces、$twCities 陣列,複用 renderStateSelect() 即可。
change 事件觸發 Ajax 載入對應省/州選項。autocomplete="address-level1" 讓瀏覽器自動填入。複製即用,省去手打 50 個選項的繁瑣工作。