Hi Max,
I’ve run into a limitation in CF8 (8.0.49).
I have one CF8 form with five submit buttons that must branch server-side logic via Event Switcher.
The clean pattern would be a single shared name (e.g., btn) with distinct value, then switch on {data:btn}.
In CF8, however, a button’s DOM id is derived from its name and can’t be overridden, so using a shared name produces duplicate element IDs and breaks this pattern.
Suggestion
Please allow assigning a custom Button ID (or let the generated id be overridden). That would enable name="btn" + distinct value and direct routing on {data:btn} in Event Switcher without any extra logic.
Current workaround
I give each button a unique name and set value = name, then add a small PHP step to expose a single switch variable for Event Switcher:
// Detect pressed button → {var:do} used by Event Switcher
$names = ['duplicate_selected','delete_selected','publish_selected','save_selected','save_all'];
$do = '';
foreach ($names as $n) {
$v = $this->data($n);
if ($v !== null && $v !== '') { $do = $n; break; }
}
$this->set('do', $do);
Cheers, Elita
Hi Elita
Thanks for reporting this.
I have fixed this here and in the next update you should be able to set the ID using the HTML Attributes behavior.
