Javascript 在jquery数据表中创建组合框
我使用以下命令创建一个datatableJavascript 在jquery数据表中创建组合框,javascript,jquery,json,datatables,datatables-1.10,Javascript,Jquery,Json,Datatables,Datatables 1.10,我使用以下命令创建一个datatable mydata = [{ "id": "1", "name": "daniel", "age": "28", "position": "accountant", "status": "A" }, { "id": "2", "name": "jack", "age": "55", "position":
mydata = [{
"id": "1",
"name": "daniel",
"age": "28",
"position": "accountant",
"status": "A"
}, {
"id": "2",
"name": "jack",
"age": "55",
"position": "architect",
"status": "R"
}];
$('#myTable').dataTable({
"aaData": mydata,
"aoColumns": [{
"mDataProp": "id"
,{
"mDataProp": "name"
}, {
"mDataProp": "age"
}, {
"mDataProp": "position"
},
{
"mDataProp": "status"
}]
});
现在我需要为列“status”(选项:D、L、a、R)创建一个组合框,每个状态都有一个单独的ID(使用“ID”列中的ID)。首先,我使用mRender函数创建了一个组合框,如:
{
"mDataProp": "status",
mRender: function(oObj){
return '<select id = "status">'+'<option value = "D"> D </option>'+'<option value = "L"> L </option>'+'<option value = "A"> A </option>'+'<option value = "R"> R </option>'+'</select>';
}
}
{
“mDataProp”:“状态”,
mRender:函数(oObj){
返回“+”D“+”L“+”A“+”R“+”;
}
}
这只是创建了一个简单的组合框,但我想知道如何为每个选项分配“id”列。有什么建议吗 您可以从不同的绝对URL(例如,
www.example.com/files/myJson.JSON
)或相对URL(例如,/files/myJson.JSON
)获取JSON文件
剩下的很简单
$(document).ready(function() {
$.getJSON( "<<LOCATION OF YOUR FILE>>", function( data ) {
var mydata = data;
$('#myTable').dataTable({
"aaData": mydata,
"columns": [{
"data": "name"
}, {
"data": "age"
}, {
"data": "position"
}]
});
});
});
$(文档).ready(函数(){
$.getJSON(“),函数(数据){
var mydata=数据;
$('#myTable')。数据表({
“aaData”:mydata,
“栏目”:[{
“数据”:“名称”
}, {
“数据”:“年龄”
}, {
“数据”:“位置”
}]
});
});
});
保持HTML的原样。请注意,我简化了数据表的格式,因为您使用的是旧版本的标签。您的数据表链接不是仅用于css吗?您从哪里获得datatables.js?另外:将您的代码放入
$(document).ready()
..中,您的控制台可能会出现错误,错误是什么?我包括了datatables.js cdn,它工作正常。非常感谢。我还想知道的是,如果我将“myData”作为一个单独的json文件,我将如何指向它?我相信$.getJSON()和$.ajax需要一个url。谢谢jonmrich。我试过了,但是我的控制台上出现了一个错误,上面写着GETfile:///C:/Users/data.json net::找不到错误文件。我检查了打字错误和我的相对路径,所有的东西似乎都是它应该的样子。这表明这是指向一台本地机器,这是所有这些运行的地方吗?是的。所有这些都在我的本地计算机上运行。将该文件与javascript和HTML放在同一文件夹中,并将这一行设置为:$.getJSON(“XXX”,函数(数据){
用文件名、斜杠或文件路径替换XXX。我的所有文件都在同一文件夹中。出于某种原因,$.getJSON()只接受与REST uri类似的url。我还阅读了有关面临类似问题的人的帖子。我通过在脚本中包含JSON输入来实现这一点。感谢您的帮助!:)