簡體   English   中英

無法將項目推入空數組

[英]Can't push item into empty array

我有這個功能,當我點擊一個按鈕時,我循環遍歷一些div並獲得該div的id以及一些復選框輸入id如果它們被標記。 為了存儲這個值,我有一個字典,假設存儲這樣的項目:

{
   1: [4,5],
   2: [2,3]
}

鍵表示每個div的id,值是單擊的復選框項ID。

完整代碼:

$(document).on('click', '.trimite-rasp', function(){
    var formData = {}
    $.each($('.single-question'), function(){
        var listIds = [];
        var qId = $(this).attr('qid');
        console.log(qId);
        $.each($('.form-check-input'), function(){
            if($(this).is(':checked')){
                var thisId = ($(this).attr('aid'));
                $(listIds).push(thisId);
            }
        });

        formData[qId] = listIds;
    });
    console.log(formData);

});

這里唯一的問題是listIds數組總是為空。 我無法將值推送到該數組,並且我確定復選框ID是正確的,因為我是console.log它並且它被正確地使用了。

這是因為您將數組用作jQuery選擇器

采用

var thisId = $(this).attr('aid'); 
listIds.push(thisId);

代替

 $(listIds).push(thisId);

嘗試這個

listIds.push(thisId);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM