Nothing built-in per se, but if JS is out, I’d use flash ram to persist a guid in each request and include that in each form submission. In an exclusive lock, confirm each request stamp submitted matches the last one issued. Note: if the user has multiple windows open for any reason, it could screw with this.
Thanks to both for the feedback!