This substring business seems a bit dirty but I'll merge it anyway. Alternatives include`e.target.id.split('_').pop()` and using a HTML5 data attribute (e.g. `data-id="123"`).