Javascript 将JSON结果转换为动态表

Javascript 将JSON结果转换为动态表,javascript,jquery,json,dynamic,Javascript,Jquery,Json,Dynamic,我在用MVC(可变列计数)创建动态表方面花了很多时间。我使用的是json结果,但使用的是jquery.each()迭代器使我的表列自动排序(Chrome)。有办法移动柱子吗?我需要名字和职位作为第一名 var data = [{"Name":"Craven Moorehead","Position":"SV-WA-1","601036":"x","600001":"x","600003":"x"},{"Name":"Vinny MCCuzin","Position":"SV-TECH-1",

我在用MVC(可变列计数)创建动态表方面花了很多时间。我使用的是json结果,但使用的是jquery.each()迭代器使我的表列自动排序(Chrome)。有办法移动柱子吗?我需要名字职位作为第一名

var data =  
[{"Name":"Craven Moorehead","Position":"SV-WA-1","601036":"x","600001":"x","600003":"x"},{"Name":"Vinny MCCuzin","Position":"SV-TECH-1","601036":"x","600001":"x","600003":"x"},{"Name":"Harold Balzonia","Position":"SV-TECH-0","601036":"x","600001":"x","600003":"x"},{"Name":"Phil  McCrevic","Position":"PT-PM-1","601036":"x","600001":"x","600003":"x"},{"Name":"Hewenta Jared","Position":"SV-TECH-1","601036":"x","600001":"x","600003":"x"}]


    var tablehtml = "<table class='table table-striped table-bordered table-condensed'>";
            var header = "<thead><tr>";
            var datain = data[0];
            $.each(datain, function (key, value) {                    

                header += "<th>" + key + "</th>";
                console.log(key);
            });
            header += "</tr></thead>";
            var rowhtml = "<tbody>";
            $.each(data, function () {
                rowhtml += "<tr>";
                $.each(this, function (k, v) {
                    /// make a row
                    rowhtml += "<td>";

                    if (v == "x") {

                        rowhtml += "<input type='checkbox'/>";
                    } else {

                        rowhtml += v;
                    }
                    rowhtml+= "</td>";
                });
                rowhtml += "</tr>"
            });

            tablehtml += header + rowhtml + "</tbody></table>";
$("#headers").append(tablehtml);


<pre id="output"></pre>
<pre id="headers"></pre>
var数据=
[{“姓名”:“克雷文·穆尔海德”,“职位”:“SV-WA-1”,“601036”:“x”,“600001”:“x”,“600003”:“x”{“姓名”:“文尼·麦库津”,“职位”:“SV-TECH-1”,“601036”:“x”,“600001”:“x”,“600003”:“x”{“姓名”:“哈罗德·巴尔佐尼亚”,“职位”:“SV-TECH-0”,“601036”:“x”,“600001”:“x”,“x”,“600003”:“x”{“姓名”:“Phil-McCrevic”,“职位”:“PT-PM-1”,“601036”:“x”,“600003”:“x”:,{“姓名”:“Hewenta Jared”,“职位”:“SV-TECH-1”,“601036”:“x”,“600001”:“x”,“600003”:“x”}]
var tablehtml=“”;
var header=“”;
var datain=数据[0];
$.each(数据输入,函数(键,值){
标题+=“”+键+“”;
控制台日志(键);
});
标题+=“”;
var rowhtml=“”;
$。每个(数据、函数(){
rowhtml+=“”;
$。每个(此,函数(k,v){
///吵架
rowhtml+=“”;
如果(v=“x”){
rowhtml+=“”;
}否则{
rowhtml+=v;
}
rowhtml+=“”;
});
行HTML+=“”
});
tablehtml+=标题+行HTML+“”;
$(“#标题”).append(tablehtml);
输出如下所示:


创建字段名数组,循环该数组并使用
data[index][field]
作为值。您可以在这些动态列名前面添加空格,以便在排序时名称和位置是第一个值。如果您使用的是JSON数据,我建议您使用datatables jquery插件,这样可以简化您的工作,