通过数组过滤带有复选框的项目

时间:2019-01-29 09:58:25

标签: ecmascript-6

enter image description here我有一个复选框可以选择所有人。我有一个返回systemi对象的复选框。我有一个复选框,返回charteri对象。但是这个有一个问题。并没有给我们提供复选框信息。 我要单击systeme ckeckbox。只有有关它的信息会显示给我们。 我想单击charteri ckeckbox。只有有关它的信息会显示给我们。

实际上,我们希望通过systemi或charteri返回对象。

我们有几个过滤器。好像已经激活了几个过滤器。过滤完成。

function customFilter(list, field, value) {
        let fill = list.filter(task => {
            if (typeof(filter) === 'Object') {
                value.forEach(val => {
                    return task[field] === value
                });
            }
            return task[field] === value
        });
        console.log(fill);

    }

    let filterCheckbox = document.querySelector('.customCheck');
    filter_ch.addEventListener('change', filt);

    function filt(e) {
        e.preventDefault();
        var
            //field = $(this).parents('.filter_type').attr('data-field');
		let field =document.querySelector('.filter_type').getAttribute('data-field');

        let val = e.target.value;
        customFilter(FlyList, field, val);
    };
<div class="filter_type" data-field="flkind">
    <h6>Ticket type
        <div class="switcher float-left ">
            <label class="customToggle small">
                <input type="checkbox" name="" id="" class="selectall">
                all
                <div class="indicator"></div>
            </label>
        </div>
    </h6>
    <ul>
        <li>
            <label class="customCheck " id="filter-check">
                <input type="checkbox" value={systemi} name="inlineRadioOptions" data-field="systemi" class="individual"> systemi
                <div class="indicator"></div>
                <span class="float-left">
    												air2
    											</span>
            </label>
        </li>
        <li>
            <label class="customCheck" id="filter-check2" >
                <input type="checkbox" value={charteri} name="inlineRadioOptions" data-field="charteri" class="individual"> charteri
                <div class="indicator"></div>
                <span class="float-left">
    											air2
    											</span>
            </label>
        </li>
    </ul> </div>

let FlyList = [{
	"id": "1",
	"city": "Dallas",
	"capacity": "1",
	"time": "06:00",
	"fltime": "07:00",
	"price": "10000",
	"flnum": "961",
	"pricetest": "dd",
	"flkind": "systemi"
}, {
	"id": "2",
	"city": "Bevery Hills",
	"capacity": "2",
	"time": "14:00",
	"fltime": "15:00",
	"price": "20000",
	"flnum": "960",
	"pricetest": '',
	"flkind": "systemi"
}, {
	"id": "3",
	"city": "New York",
	"capacity": "3",
	"time": "04:00",
	"fltime": "05:00",
	"price": "30000",
	"flnum": "950",
	"flkind": "systemi"
},
];

0 个答案:

没有答案