读取json并创建表javascript

读取json并创建表javascript,javascript,html,json,Javascript,Html,Json,我正在尝试读取json数据并以html格式将其导入到我的表中。 但也有人认为它不起作用 我已经实现了一个输入数据的函数,该函数非常有效 只有加载json数据的函数不起作用 但我真的不知道为什么 我已经发布了整个html代码和我的加载数据函数。 我的Javascript代码: function loadData() { var text = '{"employees":[' + '{"firstName":"Ben","lastName":"dsafsad" },' + '{"firstName

我正在尝试读取json数据并以html格式将其导入到我的表中。 但也有人认为它不起作用

我已经实现了一个输入数据的函数,该函数非常有效

只有加载json数据的函数不起作用

但我真的不知道为什么

我已经发布了整个html代码和我的加载数据函数。 我的Javascript代码:

function loadData() {

var text = '{"employees":[' +
'{"firstName":"Ben","lastName":"dsafsad" },' +
'{"firstName":"Peter","lastName":"dsdsaadsj" },' +
'{"firstName":"Jules","lastName":"MIAU" }]}';

obj = JSON.parse(text);

for (var i = 0; i < obj.length; i++) {     
var currentObj = obj[i];
var myName = currentObj.employees[0].firstName;
var age = currentObj.employees[0].lastName;
var table = document.getElementById("myTableData");

var rowCount = table.rows.length;
var row = table.insertRow(rowCount);
row.insertCell(0).innerHTML= '<input type="button" value = "Delete" onClick="Javacsript:deleteRow(this)">';
row.insertCell(1).innerHTML= myName.value;
row.insertCell(2).innerHTML= age.value;

}
}
函数loadData(){
var text='{“员工”:['+
{“firstName”:“Ben”,“lastName”:“dsafsad”},'+
“{”firstName:“Peter”,“lastName:“dsaadsj”},”+
“{”firstName:“Jules”,“lastName:“MIAU”}]}”;
obj=JSON.parse(文本);
对于(var i=0;i
我的HTML代码:

<!DOCTYPE html>
<html>
<head>
<title>HTML dynamic table using JavaScript</title>
<script type="text/javascript" src="app.js"></script>
</head>
<body onload="load()">
<div id="myform">
<b>Simple form with name and age ...</b>
<table>
<tr>
    <td>Name:</td>
    <td><input type="text" id="name"></td>
</tr>
<tr>
    <td>Age:</td>
    <td><input type="text" id="age">
    <input type="button" id="add" value="Add" onclick="Javascript:addRow()">
    <input type="button" id="add" value="Load Data" onclick="Javascript:loadData()"></td>
</tr>
<tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
</tr>
</table>
</div>
<div id="mydata">
<b>Current data in the system ...</b>
<table id="myTableData"  border="1" cellpadding="2">
<tr>
    <td>&nbsp;</td>
    <td><b>Name</b></td>
    <td><b>Age</b></td>
</tr>
</table>
&nbsp;<br/>
</div>
</body>
</html>

使用JavaScript的HTML动态表
带有姓名和年龄的简单表单。。。
姓名:
年龄:
系统中的当前数据。。。
名称
年龄


您应该迭代obj.employees,而不是obj。您有一个对象,它由employees数组组成(在您的示例中长度为3)

myName和age是您定义的变量,而不是html元素,因此它们没有value属性。您只需要引用变量本身,如下所示:

row.insertCell(1).innerHTML= myName;
row.insertCell(2).innerHTML= age;

这没有意义:
for(var i=0;i
。你的json在一个名为
text
的变量中,然后被解析为一个名为
obj
的对象。什么是
json
?@develiminate是的,你是对的,它应该是obj.length这是我旧代码的一部分抱歉。但它仍然不起作用,但我不知道为什么你可能有一个idear?值是什么字符串值的属性应该是什么意思?在将字符串转换为字符串对象后,将没有定义,因为没有此类属性,我在代码中做了一些更改,但仍然有相同的错误。将字符串转换为字符串是什么意思?您在注释中提到了一个错误,但在问题?谢谢!这样可以更容易地编辑代码。。。
row.insertCell(1).innerHTML= myName.value;
row.insertCell(2).innerHTML= age.value;
row.insertCell(1).innerHTML= myName;
row.insertCell(2).innerHTML= age;