基本上我需要做的是将数据库中 order.OrderID 中的 currentID 传递到一个新表,并通过OrderDetails在新表中显示当前订单的 3 列,这都是 Northwinds 数据库的一部分。
我已经创建了处理信息所需的 2 个表和代码,第一个表从开始加载并且工作正常,但我无法正常工作的是,当我单击按钮时,我将表设为空(“drawOrderDetails”)现在显示并列出当前选择的 ID。所有这些都必须使用 Jquery 和 Json 完成,并通过 Ajax 动态创建表,这样服务器就不会回发,我有点困惑,因为我对 javascript 很陌生,主要是我很难弄清楚问题是什么!
这是我的 document.ready 代码:
$(function () {
// Laddar Order Tabellen från start!
$(document).ready(function () {
var url = "GetOrders.ashx";
drawOrders(url);
});
// Skapar Order Details Tabellen!
$('.btn').click (function () {
alert(this.id);
drawOrderDetails(url);
});
});
这是我的第一个表的代码:
function drawOrders(url) {
var data = {
"dataType": "jsonp",
"data": {
"maxdelay": 3000,
"dummy": 0,
}
};
$.ajax(url, data).done(function (result) {
var table = $("<table id='orders'>").addClass("orderTable");
var tr = $("<tr>")
.append($("<th>").html("Order ID"))
.append($("<th>").html("Kund ID"))
.append($("<th>").html("Order Datum")).appendTo(table);
$("#orderData").append(table);
// Startar loopen vid ID 10300 och fortsätter.
for (var i = 52; i < result.length; i++) {
var order = result[i];
tr = $("<tr>")
.append($("<button class='btn'>").html(order.OrderID))
.append($("<td>").html(order.CustomerID))
.append($("<td>").html(order.orderDate)).appendTo(table);
tr = $("<tr>").attr("id", "order_" + order.OrderID);
}
//rita ut dom lite effektfullt!
var tbl = tr.find("tr");
var i = 0;
tbl.each(function () {
if (i % 2 == 0) {
// $(this).fadeIn(i * 10, "swing");
$(this).fadeIn("normal"); // slow, normal eller fast.
}
else {
// $(this).slideDown((lis.length * 10) - (i * 10), "swing");
$(this).slideDown("normal");
}
i++;
});
});
}
这里是第二张桌子:
function drawOrderDetails(url) {
var data = {
"dataType": "jsonp",
"data": {
"maxdelay": 3000,
"dummy": 0
}
};
$.ajax(url, data).done(function (result) {
var table = $("<table id='order_details'>").addClass("orderDetailsTable");
var tr = $("<tr>")
.append($("<th>").html("Order ID"))
.append($("<th>").html("Enhets Pris"))
.append($("<th>").html("Mängd")).appendTo(table);
$("#orderDetailsData").empty().append(table);
for (var i = 0; i < result.length; i++) {
var orderDetails = result[i];
tr = $("<tr>")
.append($("<td>").html(orderDetails.OrderID))
.append($("<td>").html(orderDetails.UnitPrice))
.append($("<td>").html(orderDetails.Quantity)).appendTo(table);
tr = $("<tr>").hide().attr("id", "order_details" + orderDetails.OrderID);
}
var tbl = tr.find("tr");
var i = 0;
tbl.each(function () {
if (i % 2 == 0) {
// $(this).fadeIn(i * 10, "swing");
$(this).fadeIn("normal"); // slow, normal eller fast.
}
else {
// $(this).slideDown((lis.length * 10) - (i * 10), "swing");
$(this).slideDown("normal");
}
i++;
});
});
}
任何答案都会有帮助,谢谢!:)
http://i.imgur.com/BbcNhhV.png:第一个加载表格的图片,不同的 ID 有可点击的按钮。