Avatar billede Morten Professor
07. juli 2021 - 22:36 Der er 1 kommentar og
1 løsning

Global value til at være unik for hvert element

Hej

Håber der er nogen der kan hjælpe med at lave en løsning til denne kode:
var countInput = 1
            $(document).on("click", '.plus-icon', function () {

                $(this).closest("td.mobil-quantity").find(".qty").attr('value', countInput++).trigger('change')

                setTimeout($('.mobile-update-qty').click(), 1000)
            });


        var countDown = 1
            $(document).on("click", '.minus-icon', function () {

                $(this).closest("td.mobil-quantity").find(".qty").attr('value', countDown--).trigger('change')

                setTimeout($('.mobile-update-qty').click(), 1000)
            });
        });

Jeg har et problem med når der er flere varer i kurven.
Så når jeg trykker for antal 1 op på en varer, virker det fint første gang, men når jeg så tager en ny varer og trykke op for antal ligger den det sammen med det første antal fra den anden varer.

Ved ikke hvad jeg skal gøre. ved ikke om man kan gør den globale værdi særskilt fra de andre.

så den anden varer counter fra 1 af igen.
Håber det giver mening

Med venlig hilsen
Morten
Avatar billede Henrik Hansen Forsker
25. juli 2021 - 17:58 #1
Du skal først hente værdien fra den enheden når du klikker +/-, og derefter sætte den tilbage med manipuleret værdi. Derved bliver hvert emne behandlet seperat.

$(document).on("click", '.plus-icon', function() {
    let val = parseInt($(this).closest("td.mobil-quantity").find(".qty").attr('value'));
    $(this).closest("td.mobil-quantity").find(".qty").attr('value', ++val).trigger('change');
    setTimeout($('.mobile-update-qty').click(), 1000);
});

$(document).on("click", '.minus-icon', function() {
    let val = parseInt($(this).closest("td.mobil-quantity").find(".qty").attr('value'));
    if (val > 1) {
        $(this).closest("td.mobil-quantity").find(".qty").attr('value', ++val).trigger('change');
        setTimeout($('.mobile-update-qty').click(), 1000);
    } else {
        // Fjern enhed fra kurven??
    }
});
Avatar billede Morten Professor
26. juli 2021 - 10:01 #2
Hej Henrik

Fik til sidst lavet en løsning ved at være noget tid siden. Tak for du skrev det giver lige nogle flere løsninger på problemet.

Med venlig hilsen
Morten
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester