「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > jQueryを使用して、選択した国に基づいてカスケードドロップダウンに都市を入力するにはどうすればよいですか?

jQueryを使用して、選択した国に基づいてカスケードドロップダウンに都市を入力するにはどうすればよいですか?

2024 年 11 月 25 日に公開
ブラウズ:407

How to Populate a Cascading Dropdown with Cities Based on Selected Country Using jQuery?

JQuery を使用してカスケード ドロップダウンを設定する

問題:

ダイナミックなドロップダウンを作成しようとしていますJQuery を使用して 2 つのドロップダウン (国と都市) を含むフォームを作成し、選択した国に対応する都市のみが都市に表示されるようにします。 dropdown.

元の JavaScript コード:

元の JavaScript 関数は動作しますが、Internet Explorer では互換性の問題に直面します。都市オプションのハードコードされた配列に依存して、選択した国に基づいて都市ドロップダウンが動的に設定されます。

JQuery 実装:

互換性を強化し、実装を簡素化するには、JQuery を使用します。雇用することができる。 JQuery を使用した効率的なアプローチは次のとおりです。

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 ''
    }).join('');
    $locations.html(html)
  });
});

説明:

  • 国を対応する都市の配列にマップするオブジェクトの場所を定義します。
  • 変更イベント ハンドラーCountry ドロップダウンの場合、City ドロップダウンの動的な人口をトリガーします。
  • イベント ハンドラーは選択された国を取得し、対応する都市の配列を場所から取得します。 object.
  • ループは都市の HTML オプション要素を作成し、$locations.html(html).

Demo: を使用して都市ドロップダウンに追加します。

動作デモについては、提供されている Fiddle リンクを参照してください。

この JQuery 実装は簡潔です。クロスブラウザ互換性があり、カスケード ドロップダウンの動的な追加を容易にします。

最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3