Separate form field labels from field ids
Wild Apricot's current requirement that all field labels be unique results in cluttered forms when the same information is required in different contexts. For example, a form that requires the name, email, cell phone for the event attendee, their emergency contact, their family member plus the name and phone of their preferred medical practitioner, hospital, etc. Ideally, the use of section headers would negate the need to have unique names but currently this does not impact the unique field name requirement (indeed, it is only a visual section heading; not supported as such in the code).
Please separate the field label from the field id so that the event registration form can remain uncluttered. To automate this, perhaps you could implement the section header as fieldset and legend elements and use that to calculate the field ids within. Providing a way to specify the field id would also be great.
In addition, I have run into the same problem with the membership forms. I cannot have an "address" field that is required for one membership level and an "address" field that is optional for another membership level. Given there is no section header involved with the membership forms then a way to specify the field id would seemingly be the better solution.
Evgeny Zaritovskiy commented
Field name is used to match Excel column during import. But I see your point. Let me keep it here for now to see if there are similar complain about this. Our current thinking is more about re-evaluating the whole concept of field management, somehow centralize customization of different forms (events, membership, etc.).