JSON 个对象和 HTML 个表格
JSON objects and HTML tables
这里是第一次发帖,JavaScript...
下面是我的JSON对象...
[
{
"Name":"Ted",
"EmailAddress":"ted@ted.edu",
"Title":"Director",
"Expertise":"Statistics",
"PhoneNumber":"444-444-4444"
},
{
"Name":"Ann",
"EmailAddress":"ann@ann.edu",
"Title":"Director",
"Expertise":"Physics",
"PhoneNumber":"444-444-5555"
}
]
我需要的是能够循环通过它为每个员工添加每个 table 行。有五个值:Name、EmailAddress、Title、Expertise、PhoneNumber
这是我目前所拥有的...
$(function () {
var Employees= [{"Name":"Ted","EmailAddress":"ted@ted.edu","Title":"Director","Expertise":"Statistics","PhoneNumber":"444-444-4444"}, {"Name":"Ann","EmailAddress":"ann@ann.edu","Title":"Director","Expertise":"Physics","PhoneNumber":"444-444-5555"}];
$("#pager").append("<table id='employeelist' class='table'><table>");
//for loop goes here//
如有任何帮助,我们将不胜感激!
编辑:另外,我如何将电子邮件地址设为 'clickable'/'mail to' 地址?
一个简单的循环即可,您还应该构建整个 HTML 字符串,然后附加:
var table = "<table id='employeelist' class='table'>";
for (var i = 0; i < Employees.length; i++) {
//Create the table row
table += "<tr>";
//Create table cells
table += "<td>" + Employees[i].Name + "</td>";
table += "<td>" + Employees[i].EmailAddress + "</td>";
table += "<td>" + Employees[i].Title + "</td>";
table += "<td>" + Employees[i].Expertise + "</td>";
table += "<td>" + Employees[i].PhoneNumber + "</td>";
//Close table row
table += "</tr>";
}
table += "</table>";
$("#pager").append(table);
由于 JSON 对象只是普通的 Javascript 对象,您可以这样对待它们。
例如,为了循环遍历它们,您可以执行正常的 Javascript 循环:
for(var i = 0; i < Employees.length; i++) {
var employee = Employees[i];
}
然后,为了访问员工的信息,您只需 employee.Name
访问其姓名,employee.Title
访问职位等。
使用 employee.Name 和其他信息中的信息,您可以使用该信息简单地构建您的字符串:
str += '<td>' + employee.Name + ...
最后加上 $("#pager").append(str);
.
'Welcome to Whosebug and javascript :)'
它实际上是一个 javascript 对象(不是 JSON 对象)。
$(function() {
var Employees = [{
"Name": "Ted",
"EmailAddress": "ted@ted.edu",
"Title": "Director",
"Expertise": "Statistics",
"PhoneNumber": "444-444-4444"
}, {
"Name": "Ann",
"EmailAddress": "ann@ann.edu",
"Title": "Director",
"Expertise": "Physics",
"PhoneNumber": "444-444-5555"
}];
var table = '<table id="employeelist" class="table">';
for (var i = 0, j = Employees.length; i < j; i++) {
table += '<tr>';
table += '<td>' + Employees[i].Name + '</td>';
table += '<td>' + Employees[i].EmailAddress + '</td>';
table += '<td>' + Employees[i].Title + '</td>';
table += '<td>' + Employees[i].Expertise + '</td>';
table += '<td>' + Employees[i].PhoneNumber + '</td>';
table += '</tr>';
}
table += '</table>';
$("#pager").append(table);
});
您正在使用 jQuery。那么它应该是这样的:
var table=$("<table>",{
id:"employeelist"
}).addClass("table");
table.appendTo($("#pager"));
$("#pager").append(table);
$.each(Employees, function(index, employee){
var row=$("<tr>",{});
$("<td>",{
html:employee.name
}).appendTo(row);
$("<td>",{
html:employee.EmailAddress
}).appendTo(row);
$("<td>",{
html:employee.Title
}).appendTo(row);
$("<td>",{
html:employee.Expertise
}).appendTo(row);
$("<td>",{
html:employee.PhoneNumber
}).appendTo(row);
row.appendTo(table);
});
这里是第一次发帖,JavaScript...
下面是我的JSON对象...
[
{
"Name":"Ted",
"EmailAddress":"ted@ted.edu",
"Title":"Director",
"Expertise":"Statistics",
"PhoneNumber":"444-444-4444"
},
{
"Name":"Ann",
"EmailAddress":"ann@ann.edu",
"Title":"Director",
"Expertise":"Physics",
"PhoneNumber":"444-444-5555"
}
]
我需要的是能够循环通过它为每个员工添加每个 table 行。有五个值:Name、EmailAddress、Title、Expertise、PhoneNumber
这是我目前所拥有的...
$(function () {
var Employees= [{"Name":"Ted","EmailAddress":"ted@ted.edu","Title":"Director","Expertise":"Statistics","PhoneNumber":"444-444-4444"}, {"Name":"Ann","EmailAddress":"ann@ann.edu","Title":"Director","Expertise":"Physics","PhoneNumber":"444-444-5555"}];
$("#pager").append("<table id='employeelist' class='table'><table>");
//for loop goes here//
如有任何帮助,我们将不胜感激!
编辑:另外,我如何将电子邮件地址设为 'clickable'/'mail to' 地址?
一个简单的循环即可,您还应该构建整个 HTML 字符串,然后附加:
var table = "<table id='employeelist' class='table'>";
for (var i = 0; i < Employees.length; i++) {
//Create the table row
table += "<tr>";
//Create table cells
table += "<td>" + Employees[i].Name + "</td>";
table += "<td>" + Employees[i].EmailAddress + "</td>";
table += "<td>" + Employees[i].Title + "</td>";
table += "<td>" + Employees[i].Expertise + "</td>";
table += "<td>" + Employees[i].PhoneNumber + "</td>";
//Close table row
table += "</tr>";
}
table += "</table>";
$("#pager").append(table);
由于 JSON 对象只是普通的 Javascript 对象,您可以这样对待它们。
例如,为了循环遍历它们,您可以执行正常的 Javascript 循环:
for(var i = 0; i < Employees.length; i++) {
var employee = Employees[i];
}
然后,为了访问员工的信息,您只需 employee.Name
访问其姓名,employee.Title
访问职位等。
使用 employee.Name 和其他信息中的信息,您可以使用该信息简单地构建您的字符串:
str += '<td>' + employee.Name + ...
最后加上 $("#pager").append(str);
.
'Welcome to Whosebug and javascript :)'
它实际上是一个 javascript 对象(不是 JSON 对象)。
$(function() {
var Employees = [{
"Name": "Ted",
"EmailAddress": "ted@ted.edu",
"Title": "Director",
"Expertise": "Statistics",
"PhoneNumber": "444-444-4444"
}, {
"Name": "Ann",
"EmailAddress": "ann@ann.edu",
"Title": "Director",
"Expertise": "Physics",
"PhoneNumber": "444-444-5555"
}];
var table = '<table id="employeelist" class="table">';
for (var i = 0, j = Employees.length; i < j; i++) {
table += '<tr>';
table += '<td>' + Employees[i].Name + '</td>';
table += '<td>' + Employees[i].EmailAddress + '</td>';
table += '<td>' + Employees[i].Title + '</td>';
table += '<td>' + Employees[i].Expertise + '</td>';
table += '<td>' + Employees[i].PhoneNumber + '</td>';
table += '</tr>';
}
table += '</table>';
$("#pager").append(table);
});
您正在使用 jQuery。那么它应该是这样的:
var table=$("<table>",{
id:"employeelist"
}).addClass("table");
table.appendTo($("#pager"));
$("#pager").append(table);
$.each(Employees, function(index, employee){
var row=$("<tr>",{});
$("<td>",{
html:employee.name
}).appendTo(row);
$("<td>",{
html:employee.EmailAddress
}).appendTo(row);
$("<td>",{
html:employee.Title
}).appendTo(row);
$("<td>",{
html:employee.Expertise
}).appendTo(row);
$("<td>",{
html:employee.PhoneNumber
}).appendTo(row);
row.appendTo(table);
});