
У меня есть функция, которая добавляет строки таблицы после нажатия кнопки, и у меня есть данные json, я хочу, чтобы данные были добавлены в эту таблицу, но результат говорит, что undefined в консоли может помочь
function addRow()
{
var rowCount = $("#detailTable>tbody>tr").length;
$("#detailTable>tbody").append('<tr><td><input name = "ProductName" required></td><td><input name = "Qty" class = "Qty" required></td><td><input name = "Price" required></td><td><input class = "total" name = "total" readonly></td><td><a class = "del" href = "#">Delete</a></td></tr>')
$("tr:odd").css("background-color", "#ccc");
}
У меня есть mvc, где результат json получается, он работает нормально, когда я обращаюсь к html, он не работает, может ли кто-нибудь помочь
$.get('@Url.Content("~")Home/GetSalesDetail', { invoiceId: salesHeaderData.invoiceId })
.done(function (salesDetailData) {
console.info(salesDetailData);
for (var j = 0; j < salesDetailData.length; j++) {
var row = $("<tr />")
$("#detailTable").append(row);
row.append($("<td>" + salesDetailData.ProductName + "</td>"));
row.append($("<td>" + salesDetailData.Qty + "</td>"));
row.append($("<td>" + salesDetailData.Price + "</td>"));
}
})
})
нет значения не были присвоены в таблице результат не определен
Тогда это просто ... Можете ли вы добавить JSON-вывод salesDetailData .. Например, JSON.stringify (salesDetailData);
как я могу применить результат к таблице
Чтобы решить вашу проблему, мне нужно увидеть формат JSON. Не могли бы вы добавить вывод JSON.stringify (salesDetailData);
хорошо, я добавлю вывод и json
json работает хорошо json для таблицы не работает



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Поскольку объект представляет собой массив, вам необходимо предоставить индекс для его чтения. это должно быть так
for (var j = 0; j < salesDetailData.length; j++) {
var row = $("<tr />")
$("#detailTable").append(row);
row.append($("<td>" + salesDetailData[j].ProductName + "</td>"));
row.append($("<td>" + salesDetailData[j].Qty + "</td>"));
row.append($("<td>" + salesDetailData[j].Price + "</td>"));
}
уделите особое внимание [j] в salesDetailData[j].ProductName
да, это то, что я ищу, большое спасибо, это очень помогло
так что ваш console.info (salesDetailData); печатает undefined ???