Javascript 用对象数组填充表

Javascript 用对象数组填充表,javascript,jquery,arrays,html-table,Javascript,Jquery,Arrays,Html Table,我有一个表,需要用对象数组中的数据填充该表。 这张桌子看起来和工作起来都像 问题是,如果我单击任何一行,它会显示endpointsData数组最后一个对象的数据({epid:4…等)。我想要的是在正确的位置有正确的数据 例如,对于包含此对象数据的第一行: { "nodeid": 1, "vendor": "0x0345", "product_id": "0x0201", "product_type": "0x0008", "home_id": "0xD087E344",

我有一个表,需要用对象数组中的数据填充该表。 这张桌子看起来和工作起来都像

问题是,如果我单击任何一行,它会显示endpointsData数组最后一个对象的数据(
{epid:4…
等)。我想要的是在正确的位置有正确的数据

例如,对于包含此对象数据的第一行:

{
  "nodeid": 1,
  "vendor": "0x0345",
  "product_id": "0x0201",
  "product_type": "0x0008",
  "home_id": "0xD087E344",
  "secure": "1",
},
单击后,在其下方打开的div必须包含以下数据:

{
  "epid": 1,
  "clslist": "5f",
  "type": "0x02,0x01",
  "zplus": "0x00,0x00,0x00,0x0000,0x0000"
},
{
  "epid": 4,
  "clslist": "134,547,843,122",
  "type": "2x07,0x01",
  "zplus": "3x44,0x0d01,0x1ed01"
},
但正如您在演示中看到的,我单击的任何一行都会显示以下数据:

{
  "epid": 1,
  "clslist": "5f",
  "type": "0x02,0x01",
  "zplus": "0x00,0x00,0x00,0x0000,0x0000"
},
{
  "epid": 4,
  "clslist": "134,547,843,122",
  "type": "2x07,0x01",
  "zplus": "3x44,0x0d01,0x1ed01"
},
你知道我做错了什么吗

代码(根据要求):

函数插入对象(){
风险值数据=[{
“nodeid”:1,
“供应商”:“0x0345”,
“产品标识”:“0x0201”,
“产品类型”:“0x0008”,
“主页id”:“0xD087E344”,
“安全”:“1”,
},
{
“nodeid”:2,
“供应商”:“0x0285”,
“产品标识”:“0x0777”,
“产品类型”:“0x0001”,
“主页id”:“0xD087D213”,
“安全”:“0”,
},
{
“nodeid”:3,
“供应商”:“0x1145”,
“产品标识”:“0x7899”,
“产品类型”:“0x0851”,
“主页id”:“0xD034T13”,
“安全”:“0”,
},
{
“nodeid”:4,
“供应商”:“0x8992”,
“产品标识”:“0x1236”,
“产品类型”:“0x8101”,
“主页id”:“0xD0682F13”,
“安全”:“1”,
}
];
变量endpointsData=[{
“epid”:1,
“clslist”:“5f”,
“类型”:“0x02,0x01”,
“zplus”:“0x00,0x00,0x00,0x0000,0x0000”
},
{
“epid”:2,
“clslist”:“20,5e,72,86,59,73,5a,8f,98,7a,80,71,85,5c,70,30,31,84”,
“类型”:“0x07,0x01”,
“zplus”:“0x01,0x00,0x06,0x0c07,0x0c07”
},
{
“epid”:3,
“clslist”:“20,5e,72,86,59,73,5a,8f,98,7a,80,71,85,5c,70,30,31,84”,
“类型”:“0x07,0x01”,
“zplus”:“0x01,0x00,0x06,0x0d01,0x0d01”
},
{
“epid”:4,
“clslist”:“134547843122”,
“类型”:“2x07,0x01”,
“zplus”:“3x44,0x0d01,0x1ed01”
},
];
//使用“数据”对象中的数据填充表
var tbl=document.getElementById('tableData');
var tblBody=document.getElementById('tableBody');
对于(变量i=0;i
th{
空白:nowrap;
颜色:#D5DDE5;
背景:#1b1e24;
边框底部:4px实心#9ea7af;
右边框:1px实心#343a45;
字体大小:23px;
字号:100;
填充:24px;
文本对齐:左对齐;
文本阴影:0 1px 1px rgba(0,0,0,0.1);
垂直对齐:中间对齐;
}
tr{
边框顶部:1px实心#C1C3D1;
边框底部-:1px实心#C1C3D1;
颜色:#666B85;
字体大小:16px;
字体大小:正常;
文本阴影:0 1px 1px rgba(256、256、256、0.1);
光标:指针;
}
/*灰排*/
tr:悬停td{
背景#4E5066;
颜色:#FFFFFF;
边框顶部:1px实心#22262e;
}
tr:N个孩子(奇数)td{
背景:#EBEBEB;
}
tr:n子对象(奇数):悬停td{
背景#4E5066;
}
运输署{
文本对齐:居中;
背景:#FFFFFF;
垂直对齐:中间对齐;
字体大小:300;
字号:18px;
文本阴影:-1px-1px 1px rgba(0,0,0,0.1);
右边框:1px隐藏#C1C3D1;
}
tr:悬停a{
文字装饰:无;
颜色:白色;
}
tr a{
文字装饰:无;
颜色:黑色;
}
标题{
显示:表格行;
}
.四舍五入列表标签{
位置:相对位置;
显示:块;
填充:.4em.4em.4em.2em;
*填充:.4em;
边缘:.5em0;
背景:ddd;
颜色:#444;
文字装饰:无;
边界半径:.3em;
}
钮扣{
位置:相对位置;
显示:块;
边缘:.5em0;
背景#87ceeb;
颜色:#444;
文字装饰:无;
边界半径:.5em;
}
.四舍五入列表标签:悬停,
钮扣{
背景:#eee;
}
.四舍五入列表标签:在{
内容:柜台(李);
反增量:李;
位置:绝对位置;
左:-1.3em;
最高:50%;
保证金顶部:-1.3em;
背景#87ceeb;
高度:2米;
宽度:2米;
线高:2米;
边框:.3em实心#fff;
文本对齐:居中;
字体大小:粗体;
边界半径:2米;
过渡:全部。3放松;
}
#名字,
#loc:焦点{
外形:0px固体透明;
}
#表头{
游标:默认值;
}

节点ID
小贩
产品ID
产品类型
家庭ID
保护
  • 身份证:
  • 地址名称:
  • EPID:
  • CLSLIST:
  • 类型:
  • ZPLUS:
  • 提交更改
  • 最好将代码分成多个函数,每个函数处理一项任务
  • 您使用的是jQuery,所以请使用jQuery
  • 数据
    对象的索引存储到每个tr中,这样您就可以使用同一索引的
    端点数据
    中的对象更新模板div。
    数据索引
    将是完美的
  • 将模板div放在HTML中的tr中,而不是在JS中执行。