Контроллер Я получаю данные от использования datacontext
private Data.EmployeeDataContext _employees = new Data.EmployeeDataContext();
public ActionResult Index()
{
var data = from emp in _employees.Employees
select new Models.Employees
{
FirstName = emp.FirstName,
LastName = emp.LastName,
};
ViewData["Employees"] = data;
return View(data);
}
Посмотреть
@{
var serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
var employees = serializer.Serialize(ViewData["Employees"]);
}
<html>
<head>
<title>Index</title>
</head>
<body>
<script src="../../Scripts/jquery-1.7.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#ViewData").click(function () {
$("#employee2").append("<tr><td>" + '@employees.ToString()' + "</tr></td>");
});
});
</script>
<div>
<button id="ViewData">View Data</button>
<table id="employee2">
<tr>
<td>FirstName</td>
</tr>
<tr>
<td>LastName</td>
</tr>
</table>
</div>
</body>
Модель
public class Employees
{
public string FirstName
{
get;
set;
}
public string LastName
{
get;
set;
}
}
* Это то, что я получаю до сих пор, или данные, которые добавляются к моей таблице *
[{"FirstName":"Nancy","LastName":"Davolio"},{"FirstName":"Andrew","LastName":"Fuller"}, {"FirstName":"Janet","LastName":"Leverling"},{"FirstName":"Margaret","LastName":"Peacock"},{"FirstName":"Steven","LastName":"Buchanan"},{"FirstName":"Michael","LastName":"Suyama"},{"FirstName":"Robert","LastName":"King"},{"FirstName":"Laura","LastName":"Callahan"},{"FirstName":"Anne","LastName":"Dodsworth"}]
Вопрос
Как я могу правильно добавить эти данные в таблицу? Пожалуйста, помогите мне, я просто хотел быть таким же, как этот.
<div>
<button id="ViewData">View Data</button>
<table id="employee2">
<tr>
<td>Nancy</td>
</tr>
<tr>
<td>Davolio</td>
</tr>....
</table>
</div>
если вы хотите просто заполнить таблицу данными при нажатии кнопки, вы выбрали не самое простое решение. Я бы лучше создал partialView:
В вашем контроллере:
public ActionResult Index()
{
return View();
}
public ActionResult Employees()
{
var data = from emp in _employees.Employees
select new Models.Employees
{
FirstName = emp.FirstName,
LastName = emp.LastName,
};
return PartialView(data);
}
В ваших сотрудниках PartialView:
<table>
@foreach(var i in Model)
{
<tr>
<td>@i.FirstName @i.LastName</td>
</tr>
}
</table>
В вашем представлении индекса:
<script>
$("#ViewData").click(function () {
$(".data").load("@Url.Action("Employees", "Home")");
});
</script>
<button id="ViewData">View Data</button>
<div class="data"></div>
<table>@foreach(var item in employees){<tr><td>@Html.DisplayFor(item.FirstName)</td><td>@Html.DisplayFor(item.LastName)</td>}</tr>}</table>
Вы можете использовать цикл foreach.