Итак, я пытаюсь создать таблицу, в которой строки таблицы представляют собой блоки div, которые я создал из данных, полученных из моей базы данных.
Кажется, у меня возникла проблема .. Я получил этот кусок javascript, который запускается, как только страница готова, и запускается снова и снова каждые 10 секунд. Цель этого сценария - обновить частичное представление с помощью ajax, чтобы мне не пришлось обновлять sh браузер, чтобы увидеть изменения в таблице.
<script type="text/javascript">
$(document).ready(function () {
setInterval(CheckAvailability, 10000);
setTimeout
});
function CheckAvailability() {
$.ajax({
type: "POST",
url: "/Dashboard/CheckChange",
contentType: "application/json; charset=utf-8",
dataType: "json",
mimeType: "text/html",
success: function (response) {
if (response) {
$('#itemsss').load("/Dashboard/ReturnItems");
console.log("Updated!");
}
else {
console.log("Failed!");
}
}
});
};
</script>
Это возвращает true
каждый раз, потому что это то, что я установил явно. Тем не менее, он выполняет load();
контент, возвращаемый этим действием.
public IActionResult ReturnItems()
{
Items = new List<EbayProduct>();
using (var ctx = new UserContext())
{
Items = ctx.Users.Include(x => x.Items).Where(x => x.Username == "Admin").FirstOrDefault().Items;
}
return PartialView("_Item", Items);
//return null;
}
Здесь я загружаю PartialView
<div id="itemsss">
<table id="foo-filtering" class="table table-bordered table-hover toggle-circle" data-page-size="7">
<thead>
</thead>
<tr>
<td>
<partial name="_Item" />
</td>
</tr>
<tfoot>
<tr>
<td colspan="5">
<div class="ft-right">
<ul class="pagination"></ul>
</div>
</td>
</tr>
</tfoot>
</table>
</div>
И вот как выглядит фактический PartialView
<tbody>
@foreach (var item in Model)
{
<tr>
<td>
<div class="container-1">
<div class="box-img">
<img src="@item.ProductImage" />
</div>
<div class="body">
<h3>@item.ItemName</h3>
<p>@item.SubTitle</p>
</div>
<div class="box-button">
<p>@item.SKU</p>
</div>
<div class="box-button">
<p class="mt-3 mr-2">$@item.Price</p>
<button class="btn btn-primary">Export</button>
</div>
</div>
</td>
</tr>
}
</tbody>
И вот где возникает проблема .. Когда я впервые загружаю страницу, все работает нормально, выглядит отлично и отлично работает, но как только он делает первое refre sh .. Или .load();
.. Он внезапно перестает работать правильно, и под этим я подразумеваю, что он не загружает никаких <tr>
элементов.
Так выглядит DOM, когда я впервые загружаю страницу, и она не работает еще не обновлено, каждый td
содержит div с классом container-1
, поэтому он работает нормально
And here is what it looks like after the first refresh and every single refresh after that
введите описание изображения здесь