按ID jQuery/javaScript将数据排序到HTML表

按ID jQuery/javaScript将数据排序到HTML表,javascript,jquery,html,json,Javascript,Jquery,Html,Json,我有一个问题,我已经努力解决了好几天了 我有一个jQuery脚本,它从url获取JSON对象,然后将其放入数组中。当我有3个不同的表,脚本将数据放入其中3个表时,就会出现问题。我试图按身份识别对其进行分类,但根本不起作用 这是一个从服务器获取数据的脚本。 JSON对象是:[{“日期”:20160721,“故障”:5,“主机名”:“AIX”,“扫描策略”:“compliance-rhel6-int-prd”},{“日期”:20160721,“故障”:1,“主机名”:“Linux”,“扫描策略”:“

我有一个问题,我已经努力解决了好几天了

我有一个jQuery脚本,它从url获取JSON对象,然后将其放入数组中。当我有3个不同的表,脚本将数据放入其中3个表时,就会出现问题。我试图按身份识别对其进行分类,但根本不起作用

这是一个从服务器获取数据的脚本。 JSON对象是:
[{“日期”:20160721,“故障”:5,“主机名”:“AIX”,“扫描策略”:“compliance-rhel6-int-prd”},{“日期”:20160721,“故障”:1,“主机名”:“Linux”,“扫描策略”:“compliance-rhel6-int-prd”}

脚本:

                   <script>
                        var url = 'http://jsonobj/_server_data'
                        $.getJSON(url,
                                function (data) {
                                    var tr;
                                    for (var i = 0; i < data.length; i++) {
                                        tr = $('<tr/>');
                                        tr.append("<td>" + data[i].Date + "</td>");
                                        tr.append("<td>" + data[i].Failures + "</td>");
                                        tr.append("<td>" + data[i].Hostname + "</td>");
                                        $('table').append(tr);
                                    }
                                });
                    </script>

var url='1〕http://jsonobj/_server_data'
$.getJSON(url,
功能(数据){
var-tr;
对于(变量i=0;i
我正在尝试创建两个表,一个用于AIX,一个用于Linux,并仅存储该系统的数据。现在,相同的数据出现在两个表中。 我试图通过获取
$(#hostname)
作为ID对其进行排序,但没有成功


谢谢你的帮助

这应该可以做到:

var AIX = [], Linux = [];
var url = "http://jsonobj/_server_data";
$.getJSON(url, function(data) {
  data = JSON.parse(data);
  for(var x in data) {
    if(data[x].Hostname == "AIX") {
      AIX[AIX.length] = data[x];
    } else if(data[x].Hostname == "Linux") {
      Linux[Linux.length] = data[x];
    }
  }
  printTables();
}); 

function printTables() {
   var tableAIX = document.getElementById('tableAIX');
   var newAIX = "";
   var tableLinux = document.getElementById('tableLinux');
   var newLinux = "";
   for(var x in AIX) {
      newAIX += "<tr><td>"+AIX[x].Date+"</td><td>"+AIX[x].Failures+"</td><td>"+AIX[x].Hostname+"</td></tr>";
   }
   for(var x in Linux) {
      newLinux += "<tr><td>"+Linux[x].Date+"</td><td>"+Linux[x].Failures+"</td><td>"+Linux[x].Hostname+"</td></tr>";
   }
   tableAIX.innerHTML = newAIX;
   tableLinux.innerHTML = newLinux;
}
var AIX=[],Linux=[];
变量url=”http://jsonobj/_server_data";
$.getJSON(url、函数(数据){
data=JSON.parse(数据);
用于(数据中的var x){
if(数据[x].Hostname==“AIX”){
AIX[AIX.length]=data[x];
}else if(数据[x]。主机名==“Linux”){
Linux[Linux.length]=数据[x];
}
}
printTables();
}); 
函数printTables(){
var tableAIX=document.getElementById('tableAIX');
var newAIX=“”;
var tableLinux=document.getElementById('tableLinux');
var newLinux=“”;
for(AIX中的var x){
newAIX+=“”+AIX[x]。日期+“”+AIX[x]。失败+“”+AIX[x]。主机名+“”;
}
for(Linux中的var x){
newLinux+=“”+Linux[x]。日期+“”+Linux[x]。失败+“”+Linux[x]。主机名+“”;
}
tableAIX.innerHTML=newAIX;
tableLinux.innerHTML=newLinux;
}
将其作为HTML:

<table id='tableAIX'></table>
<table id='tableLinux'></table>

这应该可以做到:

var AIX = [], Linux = [];
var url = "http://jsonobj/_server_data";
$.getJSON(url, function(data) {
  data = JSON.parse(data);
  for(var x in data) {
    if(data[x].Hostname == "AIX") {
      AIX[AIX.length] = data[x];
    } else if(data[x].Hostname == "Linux") {
      Linux[Linux.length] = data[x];
    }
  }
  printTables();
}); 

function printTables() {
   var tableAIX = document.getElementById('tableAIX');
   var newAIX = "";
   var tableLinux = document.getElementById('tableLinux');
   var newLinux = "";
   for(var x in AIX) {
      newAIX += "<tr><td>"+AIX[x].Date+"</td><td>"+AIX[x].Failures+"</td><td>"+AIX[x].Hostname+"</td></tr>";
   }
   for(var x in Linux) {
      newLinux += "<tr><td>"+Linux[x].Date+"</td><td>"+Linux[x].Failures+"</td><td>"+Linux[x].Hostname+"</td></tr>";
   }
   tableAIX.innerHTML = newAIX;
   tableLinux.innerHTML = newLinux;
}
var AIX=[],Linux=[];
变量url=”http://jsonobj/_server_data";
$.getJSON(url、函数(数据){
data=JSON.parse(数据);
用于(数据中的var x){
if(数据[x].Hostname==“AIX”){
AIX[AIX.length]=data[x];
}else if(数据[x]。主机名==“Linux”){
Linux[Linux.length]=数据[x];
}
}
printTables();
}); 
函数printTables(){
var tableAIX=document.getElementById('tableAIX');
var newAIX=“”;
var tableLinux=document.getElementById('tableLinux');
var newLinux=“”;
for(AIX中的var x){
newAIX+=“”+AIX[x]。日期+“”+AIX[x]。失败+“”+AIX[x]。主机名+“”;
}
for(Linux中的var x){
newLinux+=“”+Linux[x]。日期+“”+Linux[x]。失败+“”+Linux[x]。主机名+“”;
}
tableAIX.innerHTML=newAIX;
tableLinux.innerHTML=newLinux;
}
将其作为HTML:

<table id='tableAIX'></table>
<table id='tableLinux'></table>

页面上只有两个表格。一个id为
#AIX
,另一个id为
#Linux

HTML:

<table id="AIX"></table>
<table id="Linux"></table>
<script>
    var url = 'http://jsonobj/_server_data'
    $.getJSON(url,
            function (data) {
                var tr;
                for (var i = 0; i < data.length; i++) {
                    tr = $('<tr/>');
                    tr.append("<td>" + data[i].Date + "</td>");
                    tr.append("<td>" + data[i].Failures + "</td>");
                    tr.append("<td>" + data[i].Hostname + "</td>");

                    // This is where the magic happens
                    $('table#' + data[i].Hostname).append(tr);
                }
            });
</script>

Javascript:

<table id="AIX"></table>
<table id="Linux"></table>
<script>
    var url = 'http://jsonobj/_server_data'
    $.getJSON(url,
            function (data) {
                var tr;
                for (var i = 0; i < data.length; i++) {
                    tr = $('<tr/>');
                    tr.append("<td>" + data[i].Date + "</td>");
                    tr.append("<td>" + data[i].Failures + "</td>");
                    tr.append("<td>" + data[i].Hostname + "</td>");

                    // This is where the magic happens
                    $('table#' + data[i].Hostname).append(tr);
                }
            });
</script>

var url='1〕http://jsonobj/_server_data'
$.getJSON(url,
功能(数据){
var-tr;
对于(变量i=0;i

执行此操作时,
tr
元素将仅附加到与主机名ID匹配的表中。

页面上只有两个表。一个id为
#AIX
,另一个id为
#Linux

HTML:

<table id="AIX"></table>
<table id="Linux"></table>
<script>
    var url = 'http://jsonobj/_server_data'
    $.getJSON(url,
            function (data) {
                var tr;
                for (var i = 0; i < data.length; i++) {
                    tr = $('<tr/>');
                    tr.append("<td>" + data[i].Date + "</td>");
                    tr.append("<td>" + data[i].Failures + "</td>");
                    tr.append("<td>" + data[i].Hostname + "</td>");

                    // This is where the magic happens
                    $('table#' + data[i].Hostname).append(tr);
                }
            });
</script>

Javascript:

<table id="AIX"></table>
<table id="Linux"></table>
<script>
    var url = 'http://jsonobj/_server_data'
    $.getJSON(url,
            function (data) {
                var tr;
                for (var i = 0; i < data.length; i++) {
                    tr = $('<tr/>');
                    tr.append("<td>" + data[i].Date + "</td>");
                    tr.append("<td>" + data[i].Failures + "</td>");
                    tr.append("<td>" + data[i].Hostname + "</td>");

                    // This is where the magic happens
                    $('table#' + data[i].Hostname).append(tr);
                }
            });
</script>

var url='1〕http://jsonobj/_server_data'
$.getJSON(url,
功能(数据){
var-tr;
对于(变量i=0;i

执行此操作时,
tr
元素将仅附加到与主机名ID匹配的表中。

简单:迭代这些表

$.getJSON(url, function (data) {
    var tr;
    for (var i = 0, $tables = $('table'), c; c = data[i]; i++) {
        $tr = $('<tr/>');
        $tr.append("<td>" + c.Date + "</td>");
        $tr.append("<td>" + c.Failures + "</td>");
        $tr.append("<td>" + c.Hostname + "</td>");
        $tables[i].appendChild($tr[0]);
    }
});
$.getJSON(url、函数(数据){
var-tr;
对于(var i=0,$tables=$('table'),c;c=data[i];i++){
$tr=$('');
$tr.append(“+c.Date+”);
$tr.append(“+c.Failures+”);
$tr.append(“+c.Hostname+”);
$tables[i].appendChild($tr[0]);
}
});

简单:迭代表格

$.getJSON(url, function (data) {
    var tr;
    for (var i = 0, $tables = $('table'), c; c = data[i]; i++) {
        $tr = $('<tr/>');
        $tr.append("<td>" + c.Date + "</td>");
        $tr.append("<td>" + c.Failures + "</td>");
        $tr.append("<td>" + c.Hostname + "</td>");
        $tables[i].appendChild($tr[0]);
    }
});
$.getJSON(url、函数(数据){
var-tr;
对于(var i=0,$tables=$('table'),c;c=data[i];i++){
$tr=$('');
$tr.append(“+c.Date+”);
$tr.append(“+c.Failures+”);
$tr.append(“+c.Hostname+”);
$tables[i].appendChild($tr[0]);
}
});

我不确定是否正确理解您的需求