Ich habe eine Liste von Elementen, denen jeweils ein Abzeichen angehängt ist. Wenn Sie auf das Abzeichen klicken, wird eine Tabelle aus einer Teilansicht geladen.Spinner innerhalb von Modal, während auf Daten zum Laden gewartet wird
Dies ist meine Schleife für die Abzeichen:
@foreach (var item in Model)
{
<li>
<a href="#my_modal" data-toggle="modal" data-book-id="@Url.Action("AssociatedToHideout", "Hideout", new { id = item.HideoutID })">
<span class="badge-rounded bg-red">@Html.Action("TaskCount", "Hideout", new { id = @item.HideoutID })</span>
</a>
<div class="item">
<a href='@Url.Action("Index", "Hideout", new { id = @item.HideoutID })'>
<img src="~/Assets/img/database.png">
<span class="caption">@item.Name</span>
</a>
</div>
</li>
}
Diese URL Aktion innerhalb der Daten-Buch-ID wird mir sagen, welche Teilansicht zu laden.
Das ist mein Modal:
<script>
$('#my_modal').on('show.bs.modal', function(e) {
var bookId = $(e.relatedTarget).data('book-id');
$.get(bookId, function (data) {
$(e.currentTarget).find('.modal-body').html(data);
});
});
$('#my_modal').on('hidden.bs.modal', function(e) {
$(e.currentTarget).find('.modal-body').text('');
});
</script>
Das Problem ist, wenn ich die Seite zuerst geladen werden manchmal die .html(data)
wird nicht angezeigt:
<div class="modal" id="my_modal">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button>
<h4 class="modal-title">Modal header</h4>
</div>
<div class="modal-body">
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
Das Skript es im Inneren des modalen dies zu laden Ich wollte sofort einen Spinner, während er wartet. Wie kann ich das machen?
Eine Lösung besteht darin, ein animiertes Element (gif) zu verbergen. Wenn Sie auf Laden klicken, wird das Element angezeigt. Wenn der Anruf zurückkehrt, blenden Sie das Element erneut aus. – Jasen