The user needs item-level feedback on which page item holds the "unsaved changes" that trigger the alert "Leave Site? Changes you made may not be saved." A page-level alert is not enough.
If the user attempts to leave a form which unsaved changes, the user may be prompted with the alert "Leave Site? Changes you made may not be saved." The user wants to know which of the form fields contains said-unsaved change.
Preferred Solution (Optional)
For example, the message "This item has unsaved changes" can be added inline next to the offending item in question. Perhaps something like this:
I wrote a plugin to do exactly this : https://github.com/hhudson/Warn-on-unsaved-changes-plugin