Ajax Driven Dropdown Lists for ProcessWire made easy

Invalid Data Relationships and Triggers

Dynamic Selects module will throw an error if invalid relationships and/or data sources are detected when you are setting up the field. Errors will indicate which columns have an invalid relationship. Below is an outline of what are considered as invalid relationships:

  1. A relationship of None on any of the dropdowns except for the first.
  2. Any other relationship apart from None for the first dropdown.
  3. A dropdown with a relationship of either a Field or a User: Property cannot be a trigger for a dependent select with a Child, Parent, Page, Group, Field or User: Property relationship.
  4. A dropdown with a relationship of either a Child, Parent, Page, Group, Value or User: Value cannot be a trigger for a dependent dropdown with relationship of Page, User: Property or User: Value.
  5. A dropdown with the relationship Field can only be a trigger for a dependent dropdown with the relationship Value and a Data Source Varies .
  6. A dropdown with the relationship User: Property can only be a trigger for a dependent dropdown with the relationship User: Value and a Data Source User: Varies.
  7. A dropdown with the relationship Value or User: Value can only be a trigger if its data source is a pagefield.
  8. If the first dropdown is of data source type Page it cannot be a trigger for a dependent dropdown with a relationship of Page, User: Property or User: Value.
  9. A Page relationship in the dependent dropdown can only be directly triggered by a first dropdown of data source of type Templates . Similarly, Templates as the data in the first dropdown can only trigger a Page relationship.
  10. Users as the data source in the first dropdown can only be a trigger for a dependent dropdown with the relationship User: Property or User: Value.

Unless otherwise specified, all the settings in the coming sections only apply to frontend use and are found only inĀ ProcessDynamicSelects for use in MarkupDynamicSelects. These settings are found in the 'Settings' Tab when editing a Dynamic Selects in ProcessDynamicSelects.