jak zrobić żeby strony po dodaniu like albo dislike nie odświeżała się za każdym razem

0

Witam,chciałem zrobić dodawanie like i dislike do mojego obrazka na stronie, to się udało ale gdy dodaje za każdym razem strona odświeża się i to jest bardzo uprzykrzające

controller z metodami Like i DisLike

public async Task<IActionResult> Like(int id)
        {
            var memy = db.Memy.SingleOrDefault(s => s.Id_mema == id);
            memy.Like++;
            if (id != memy.Id_mema)
            {
                return NotFound();
            }

            if (ModelState.IsValid)
            {

                db.Update(memy);
                await db.SaveChangesAsync();

                return RedirectToAction(nameof(Index));
            }
            return RedirectToAction(nameof(Index));
        }

        public async Task<IActionResult> Dislike(int id)
        {
            var memy = db.Memy.SingleOrDefault(s => s.Id_mema == id);
            memy.Dislike++;
            if (id != memy.Id_mema)
            {
                return NotFound();
            }

            if (ModelState.IsValid)
            {

                db.Update(memy);
                await db.SaveChangesAsync();

                return RedirectToAction(nameof(Index));
            }
            return RedirectToAction(nameof(Index));
        }

Views->Index

    <p class="opis">@item.Description</p>
    <p class="item-id">@item.Id_mema</p>
    <a asp-action="Delete" asp-route-id="@item.Id_mema">Delete</a>
    <a asp-action="Edit" asp-route-id="@item.Id_mema">Edit</a>
    <a asp-action="Like" asp-route-id="@item.Id_mema">Like</a> @item.Like
    <a asp-action="Dislike" asp-route-id="@item.Id_mema">Dislike</a> @item.Dislike

z tego co przeczytałem to dowiedziałem się że można to zrobić jakoś za pomocą javascript i za pomocą API ale trochę nwm jak ,ktoś ma może pomysł jak zrobić dodawanie bez odświeżania strony za każdym razem?

1

Odswieza sie poniewaz uzywasz HTTP powinienes uzyc np Ajaxa. Do poczytania tu:

https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Synchronous_and_Asynchronous_Requests
https://www.w3schools.com/xml/ajax_intro.asp
po sukciesie powinienes zaktualizowac widok :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1