Proses menentukan sama ada unsur wujud dalam tatasusunan adalah tidak sah
P粉204136428
P粉204136428 2024-04-03 13:03:54
0
1
533

Maaf mengganggu anda, tetapi saya telah menghabiskan dua jam untuk memikirkan perkara ini. Masalahnya ialah kod saya hanya menambah satu elemen, tetapi tiada id lain, ia mengatakan "sudah wujud"

$(function(){

    $(".js-compare-add").click(function(){
        var item_id = $(this).data('id');

        if(Cookies.get('compare_id_list')){
            var compareListStr = Cookies.get('compare_id_list');
            var compareListArr = compareListStr ? compareListStr.split(',') : [];
            if (compareListArr.indexOf(item_id) > -1) {
                compareListArr.push(item_id);
                Cookies.set('compare_id_list', compareListArr.join(','), {expires: 10}); 
                alert('Save! ' + item_id);
            } else {
                alert('already have ' + item_id);
            }

        } else {
            alert('There was no list, we created it and added this position ' + item_id);
            Cookies.set('compare_id_list', item_id);
        }

    });
});

Sekiranya berlaku - Saya menggunakan ini untuk kuki https://github.com/js-cookie/js-cookie jika (jQuery.inArray(item_id,compareListArr) === -1) juga tidak membantu

P粉204136428
P粉204136428

membalas semua(1)
P粉364129744

Dave Newton membuat perkara yang berguna , logiknya kelihatan mundur, tetapi jika ini yang anda dapat jika anda cuba membuatnya berfungsi:

Apabila anda menggunakan data 函数时,jQuery 会进行数据操作,它不仅仅为您提供匹配的 data-id nilai rentetan atribut. Jika teks atribut adalah semua angka, jQuery akan menukarnya kepada nombor:

const id = $("#example").data("id");
console.log(typeof id); // number
<div id="example" data-id="123"></div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan