カスケード関数で複数のパラメーターを渡す必要があります。
// Cascade function
(function ($) {
$.fn.cascade = function (options) {
var defaults = {};
var opts = $.extend(defaults, options);
return this.each(function () {
$(this).change(function () {
var selectedValue = $(this).val();
if (selectedValue == '') {
opts.childSelect.empty();
return;
}
var params = {};
params[opts.paramName] = selectedValue;
$.post(opts.url, params, function (items) {
opts.childSelect.empty();
if (opts.firstOption != "")
opts.childSelect.append(
$('<option/>')
.attr('value', '')
.text(opts.firstOption));
$.each(items, function (index, item) {
opts.childSelect.append(
$('<option/>')
.attr('value', item.Id)
.text(item.Name)
);
});
if (typeof (opts.callback) == "function") { opts.callback(); }
});
});
});
};
})(jQuery);
呼び出しでは、makeId と categoryId の値を渡す必要があります。
// bind cascade Make dropdown
$("#Make_Id").cascade({
url: "/Ad/ListModelByCategoryByMake",
paramName: "makeId",
firstOption: 'Selecione o Modelo...',
childSelect: $("#Model_Id")
});
呼び出しはポストで行われますが、2 つのパラメーターを指定してカスケード関数を呼び出すにはどうすればよいですか?
ありがとう。