国の選択リストにバインドされた一般的な jQuery アクションを作成しました。国の選択にバインドされています。変更されると、状態を取得するためにサーバーへの呼び出しが行われます...
$('#' + countryElementID).change(function () {
var countryID = $('#' + countryElementID).val();
$.ajax({
type: 'POST',
url: '/App/GetStatesByCountry',
data: {
id: countryID
},
dataType: 'json',
success: function (result) {
// build HTML replace via .html
},
failure: function (result) {
// ...
}
});
});
これをトリガーしているコードは次のとおりです...
var populateCompanyInfo = function (resultData) {
var populateList = {
CompanyName: 'input',
Address1: 'input',
Address2: 'input',
City: 'input',
Zip: 'input',
Email: 'input',
Phone: 'input',
Fax: 'input',
CountryID: 'select',
StateID: 'select',
Active: 'toggle'
}
$.each(populateList, function (name, value) {
var a = eval('resultData.' + name);
var sectionID = 'RealtyCompany';
if (a != null || a != '') {
if (value == 'input') {
// ...
}
if (value == 'select') {
var a = eval('resultData.' + name);
$('#select' + sectionID + name).val(a);
$('#select' + sectionID + name).trigger('change');
}
if (value == 'toggle') {
// ...
}
}
});
私が抱えている問題は、州が設定される前に StateID を選択することです (国のドロップダウンの変更からトリガーされます)。
変数が渡されるまで基本的に待機する国のドロップダウンの一般的なアクションで渡すことができる変数はありますか? 遅延アクションの 1 つを jQuery に組み込む方法を考えてみましたが、これを行う方法を見つけるのに苦労しています。