Я не могу найти лучшее решение, чтобы проверить, что элементы (значения - строка) из массива отмечены в выпадающем меню.
Вот часть моего html (выпадающего)
<div _ngcontent-c5="" class="dropdown-item">
<div _ngcontent-c4="" class="dropdown-item">
<div _ngcontent-c4="" class="custom-control custom-checkbox">
<input _ngcontent-c4="" class="custom-control-input ng-untouched ng-pristine ng-valid" type="checkbox" id="dog1">
<label _ngcontent-c4="" class="custom-control-label" for="dog1">Dog</label>
</div>
</div>
<div _ngcontent-c4="" class="dropdown-item">
<div _ngcontent-c4="" class="custom-control custom-checkbox">
<input _ngcontent-c4="" class="custom-control-input ng-untouched ng-pristine ng-valid" type="checkbox" id="cat2">
<label _ngcontent-c4="" class="custom-control-label" for="cat2">Cat</label>
</div>
</div>
<div _ngcontent-c4="" class="dropdown-item">
<div _ngcontent-c4="" class="custom-control custom-checkbox">
<input _ngcontent-c4="" class="custom-control-input ng-untouched ng-pristine ng-valid" type="checkbox" id="horse3">
<label _ngcontent-c4="" class="custom-control-label" for="horse3">Horse</label>
</div>
</div>
на входах, я могу проверить этот элемент isSelected
.
Я хочу взять значения (флажок) из меток и проверить, что он содержится в моем массиве, но у меня есть проблема, чтобы написать функцию, которая будет создавать массив с метками, которые выбраны.
Я попробовал что-то вроде этого (только для проверки, что я все делаю правильно, я использовал консольный журнал вместо od push to array). Но это не работает.
var categories = $$('.custom-checkbox');
this.assertTest = function () {
categories.filter(function (element, index) {
if (element.isSelected()) {
element.$('label').get(index).getText().then(function (ele) {
console.log(ele);
})
}
})
return this;
}