ドロップダウン リスト コントロールはサーバー側 (asp:dropdownlist タグ) ですか、それともクライアント側 (select タグ) ですか?
サーバー側の場合は、コントロールのクライアント側 ID を挿入する必要があります。これが、イベントが発生しない原因である可能性があります。
ASP.NET では、サーバー側のコントロールは生成された別のクライアント側 ID を持ちます (そのため、ID "Country" を持つ DropDownList は、ct01_ct050_Country のようなクライアント側 ID を持ちます。
このような場合、以下を使用して、実行時にマークアップにクライアント側 ID を挿入できます。
$('#<% Country.ClientID %>').change(function() {
//code here
});
実行時に、レンダリングされたコード/マークアップは次のようになります。
$('#ct01_ct050_Country').change(function() {
//code here
});
クライアント/サーバー ID を回避する他のオプションは、一意の CSS クラス名をコントロールに適用し、代わりにそれによって選択することです。
マークアップ:
<asp:DropDownList ID="Country" CssClass="countryDD" runat="server" />
およびjQuery:
$('select.countryDD').change(function () {
//code here
});
この答えは、そのままの ASP.NET にも当てはまります。私はそのフレームワークを使用していないため、MVC に関連しているかどうかはわかりませんが、概念またはマークアップとクライアント コードはかなり近いと思います。
これが役立つことを願っています...