建立一個包含兩個下拉清單(國家和城市)的表單,您需要讓它們動態,以便僅所選國家/地區的城市可見。您已將 JavaScript 轉換為 jQuery 以獲得更好的相容性,但仍面臨一些問題。
<code class="javascript">function populate(s1, s2) { var optionArray; switch (s1.value) { case "Germany": optionArray = ["|", "magdeburg|Magdeburg", "duesseldorf|Duesseldorf", "leinfelden-echterdingen|Leinfelden-Echterdingen", "eschborn|Eschborn"]; break; // ... more cases default: optionArray = ["|"]; } for (var option in optionArray) { var pair = optionArray[option].split("|"); var newOption = document.createElement("option"); newOption.value = pair[0]; newOption.innerHTML = pair[1]; s2.options.add(newOption); } }</code>
以下jQuery 程式碼達到預期的結果:
<code class="javascript">jQuery(function($) { var locations = { 'Germany': ['Duesseldorf', 'Leinfelden-Echterdingen', 'Eschborn'], 'Spain': ['Barcelona'], 'Hungary': ['Pecs'], 'USA': ['Downers Grove'], 'Mexico': ['Puebla'], 'South Africa': ['Midrand'], 'China': ['Beijing'], 'Russia': ['St. Petersburg'], } var $locations = $('#location'); $('#country').change(function () { var country = $(this).val(), lcns = locations[country] || []; var html = $.map(lcns, function(lcn){ return `<option value="${lcn}">${lcn}</option>` }).join(''); $locations.html(html) }); });</code>
以上是如何使用 jQuery 動態填入級聯下拉式選單?的詳細內容。更多資訊請關注PHP中文網其他相關文章!