動的な jQuery DataTable を作成する MVC3 プロジェクトがあります。コントローラー側のアクション名を含む「GetDataFunc」というテーブルにカスタム属性を追加しました。DataTable を定義するときにこの属性の値を使用したいのですが、@Url.Action は最初のパラメーターで (文字列ではなく) パラメーターを受け入れません。
私のコード:
var table = document.getElementById('UsersTbl');
if (table.hasAttribute("GetDataFunc")) {
var func = table.GetDataFunc;
var oTable = $('#MyTbl').dataTable({
"bServerSide": true,
"sAjaxSource": '@Url.Action(func, "MyPages")',
"bProcessing": true,
"aoColumns": cols,
"oLanguage": { "sSearch": "Search all columns:" },
"fnDrawCallback": function (oSettings) {
totalRecords = oSettings.fnRecordsDisplay();
}
});
}
プログラムを実行しようとすると、次のメッセージが表示されます:
The name 'func' does not exist in the current context
コントローラー側で呼び出す関数を動的に定義するにはどうすればよいですか?
ありがとう