私はあなたのコードを見ていないので、正確な問題を伝えることはできません。ここで私はあなたのソリューションを見ています。最初に2番目のドロップダウン値をフィルタメソッドに追加します。選択されていない場合はデフォルト値が設定されます。
public ActionResult Index(string sortOrder, string id,
string channelLocation, int secon_ddl = 0)
は、第2の選択されたかどうかを確認し、この場合は0であり、そして第二の方法にアイテムの別の方法WICH戻るリストを追加し、firtsドロップダウン値が変更されたときにそれを呼び出す
if(secon_ddl != 0)
{
//do whatever
}
をフィルタリング。最適なオプションは、JSON形式の戻り値です。ここ ので、テーブルの更新は、この最後のコードは完全にdifferntする必要がありますあなたのケースでは、単純な
('#category_list, #subCategory_list').change(function(){
table.draw();
})
で、私はカテゴリが
('#category_list').change(function() {
var cat_value = $(this).val();
$.ajax({
url: '/Product/GetSubCategory',
type: "GET",
dataType: "JSON",
data: { category: cat_value },
contentType: 'application/json',
success: function (data) {
if (data.length > 0) {
var list = $('#subCategory_list');
list.html(""); // clear before appending new list
list.append(
$('<option></option>').val(null).html("Chose"));
$.each(data, function (i, subCat) {
list.append(
$('<option></option>').val(subCat.id).html(subCat.name));
});
}
}
});
}
を変更したときに、私はjqueryののDataTableを使用していますサブカテゴリのリストを更新しています、私のコードです。あなたのフィルタmehtodが両方のドロップダウンリストの値と、ドロップダウンの1つが変更されたときの起動を確認してください。これがあなたを助けることを願って!