4

ブートストラップドロップダウンボタンがあります。ページの読み込み時に国リストを読み込む代わりに、ユーザーがこのドロップダウンボタンをクリックしたときにデータを取得したいのですが、これが私のコードです。

<div class="btn-group">
<input class="text-box single-line" data-val="true" data-val-required="The Country field   is required." id="Country" name="Country" type="text" value="US" />
<a class="btn dropdown-toggle country" id="country" data-toggle="dropdown">
<span class="caret"></span>
</a>
<ul class="dropdown-menu countrys" role="menu" aria-labelledby="dropdownMenu">
   //store country list
</ul>
</div> 

ドロップダウンボタンをクリックしますが、jqueryの動作をトリガーできません。ブートストラップでは、カスタムのドロップダウン機能が許可されていないようです。

$(document).ready(function () {
        $('#country').click(function () {
            // Only call notifications when opening the dropdown
            if (!$(this).hasClass('open')) {
                $.ajax({
                    type: "GET",
                    url: "/getCountries",
                    async: false,
                    dataType: "script"
                });
            }
        });
    });
4

1 に答える 1

2

dropdown-open イベント内に ajax リクエストを追加してみることができます。このようなもの:

$('#myDropdown').on('show.bs.dropdown', function () {
  // do something…
})

show.bs.dropdow -- このイベントは、show インスタンス メソッドが呼び出されるとすぐに発生します。トグル アンカー要素は、イベントの relatedTarget プロパティとして使用できます。

于 2014-07-04T07:06:50.660 に答える