Mapping of Lists

In order to resolve List components correctly, it is necessary to map the component containing all list entries, i.e the list itself as well as the components which represent the individual list entries.

ClassRequired components and sub items
ListRepresents the List component, contains all list entries.
Item:ListItemRepresents the individual list entry.
 Optional sub items
CheckBox:ListItemCheckBox(Optional) Represents a checkbox inside the list entry.
Icon:ListItemIcon(Optional) Represents an icon inside the list entry.
Table 48.3:  Mapping of Lists

In the case of comboboxes you can also map the specific ComboBoxList: List:ComboBoxList and Item:ComboBoxListItem.

Sample:

The following HTML Code represents a list:

<ul class="datalist">
  <li class="list-item">Entry A</li>
  <li class="list-item">Entry B</li>
  <li class="list-item">Entry C</li>
  <li class="list-item">Entry D</li>
  <li class="list-item">Entry E</li>
</ul>
Example 48.3:  HTML List

This HTML code offers the choice whether to map the HTML tags or the css classes. We highly recommend to use the css classes as this will be a lot preciser than the omnipresent tags ul and li. datalist strongly hints that the object would be a data list. With list-item we can add @::ancestor=List to be sure not to map sub items of other complex components (e.g. with table cells not shown here, which very well could have the css class list-item)

If you used the HTML tags this might easily lead to wrong mappings with other components. If such a thing should happen and you find it difficult to tell why a mapping does not work you can use the procedure qfs.web.ajax.dumpCustomWebResolverProperties to show the current mappings.

 
 
installCustomWebResolver
List mappings.
Parameters
resolver custom
version
genericClasses datalist=List,
list-item=Item:ListItem@::ancestor=List