我有一種情況,一個長的複選框選項列表是過濾進出用PHP/AJAX查詢。因此,當用戶檢查一個或多個複選框時,需要創建用戶已檢查哪些框的列表。創建和存儲/添加到過濾從複選框值的數組
使用jQuery和.map(),我能創造什麼複選框被選中的初始列表陣列。很簡單。
var selected_checkboxes;
$(document).on('click', '.checkbox_select', function() {
var checkbox_selector = $('.checkbox_select:checked');
selected_checkboxes = checkbox_selector.map(function(i, n) {
return this.value;
}).get();
console.log(selected_checkboxes);
});
所以在這裏,我們會說我有一組10個複選框(複選框1 - 10),我檢查的第一個3
控制檯輸出["Checkbox 1", "Checkbox 2", "Checkbox 3"]
的問題當您過濾複選框的視圖時會出現。說你過濾器出除複選框3,5和6以外的所有複選框。複選框3仍然被選中。現在,如果我們選中「複選框5」,我們的新列表陣列將如下所示:["Checkbox 3", "Checkbox 5"]
。
我知道它爲什麼會這樣做,但所需的結果是建立在運行過濾器之前檢查的內容之後,它應該看起來像["Checkbox 1", "Checkbox 2", "Checkbox 3", "Checkbox 5"]
。幾乎就像你剛剛添加到最初的數組值。
過濾不能隱藏/顯示被隱藏,因爲它是所有的基於AJAX的查詢時,複選框。
有沒有人有任何想法,我可以得到一個數組像這樣工作?任何幫助將非常感激。