情况就是这样。
但我无法像调用json文件一样调用此方法 在ajax。请提出解决方案。
以下是代码示例
var table = $('#example').DataTable({
"ajax": "/content/data/dataList.json", //here I want the url of my method.
"bDestroy": true,
"iDisplayLength": 15,
"columns": [
{
"class": 'details-control',
"orderable": false,
//"data": null,
"defaultContent": ''
},
{ "data": "name" },
],
"order": [[1, 'asc']],
"fnDrawCallback": function (oSettings) {
runAllCharts();
}
});
我的方法ID:
//Controller Name AppDetail
public string getData(string ddlid)
{
DataTable ddl = new DataTable();
string query = string.Empty;
if (ddlid == "O1")
{
query = "SELECT for O1";
}
else if (ddlid == "O2")
{
query = "SELECT for O2";
}
con.Open();
MySqlDataAdapter da = new MySqlDataAdapter(query, con);
da.Fill(ddl);
con.Close();
System.Web.Script.Serialization.JavaScriptSerializer jSearializer = new System.Web.Script.Serialization.JavaScriptSerializer();
return jSearializer.Serialize(ddl);
}
这是json数据样本
{
"data": [
{
"name": "Aladdin"
}
]
}
请帮助。
答案 0 :(得分:1)
如果您不使用服务器端处理方法首先使用ajax方法获取所有数据并在数据表上使用该数据。看看下面的代码......它可能会帮助你获得一些想法。
$.ajax({
url: 'api/AppDetail/getData',
method: 'get',
data :{ddlid:'01'}, // this is input parameter for your function
dataType: 'json',
contentType: 'text/json',
success: function(res){
var table=$('#example').dataTable({
data: res,
columns:[
{'data':'name'}
],
bDestroy : true,
iDisplayLength : 15,
});
}
});
答案 1 :(得分:0)
如果您的控制器正常工作,您可以在DataTables之前调用它,并通过DataTables的数据(https://datatables.net/reference/option/data)来源插入数据
答案 2 :(得分:0)
在Controller上如果你正在获取你想要的数据,那么你可以将这个数据返回到局部视图。 请注意,部分视图不是一个html表,你可以使用Razor语法或任何东西。 然后进行ajax调用以返回此局部视图,成功后,您可以应用数据表插件。
int' to
希望这会对你有帮助..