Различие между selectitem и тегами selectitems

Вы можете использовать простой фильтр и возвращать все элементы, для которых первая часть разбиения отсутствует в массиве ArrayFileName.

var ArrayFileName = ['one', 'two', 'three', 'three', 'five', 'six', 'ten'];
var ArrayFileNameWExt = ['one.txt', 'two.txt', 'three.txt', 'ten.wmf', 'eleven.cgm'];

var final = ArrayFileNameWExt.filter(function(item) {
  return !ArrayFileName.includes(item.split('.')[0]);
})

console.log(final);

Если вы используете довольно старую версию javascript, метод includes Array может не существовать. Вместо этого можно использовать следующий код.

var ArrayFileName = ['one', 'two', 'three', 'three', 'five', 'six', 'ten'];
var ArrayFileNameWExt = ['one.txt', 'two.txt', 'three.txt', 'ten.wmf', 'eleven.cgm'];

var final = ArrayFileNameWExt.filter(function(item) {
  var name = item.split('.')[0];
  for (var i = 0; i < ArrayFileName.length; i++) {
    if (ArrayFileName[i] === name) return false;
  }
  return true;
})

console.log(final);

8
задан ShreevatsaR 1 December 2008 в 13:25
поделиться

2 ответа

Различие точно, что Вы ожидали бы. selectitem тег добавляет единственный объект к списку HTML в то время как selectitems добавляют несколько объектов.

Из базовой ссылки тега JSF:

SelectItem:

SelectItem тег добавляет ребенка UISelectItem компонент к компоненту, связанному с тегом включения. В HTML renderkit, это создает единственный элемент. Это может использоваться с любым из избранных тегов в библиотеке HTML-тэга JSF. Содержимое тела этого тега должно быть пустым.

Пример:

<h:selectOneMenu id="list1">
    <f:selectItem itemLabel="Option 1" itemValue="1"></f:selectItem>
</h:selectOneMenu>

Вывод HTML:

<select id="list1" name="list1" size="1">
    <option value="1">Option 1</option>
</select>

SelectItems:

SelectItems тег добавляет ребенка UISelectItems компонент к компоненту, связанному с включением тега. Можно использовать этот тег для установки списка объектов в модели предметной области как опции для избранного компонента. Содержимое тела этого тега должно быть пустым.

Пример:

<h:selectManyListbox id="list">
    <f:selectItems value="#{optionBean.optionList}"></f:selectItem>
</h:selectManyListbox>

Вывод HTML:

<select id="list" name="list" multiple="true" size="-2147483648">
    <option value="1">Option 1</option>
    <option value="2">Option 2</option>
    <option value="3">Option 3</option>
</select>
11
ответ дан 5 December 2019 в 14:07
поделиться

Также приятно помнить, что f: selectItems может указать на SelectItem, массив или коллекцию объектов SelectItem или сопоставить метки сопоставления со значениями.

1
ответ дан 5 December 2019 в 14:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: