I know that i have to validate the data never the less.
My original Question was why this "accidental reloads" happen at all. There should be no need to hide the button if the script would work correctly.
Im trying to catch the "real" reloads because i dont want my users to accidently change configuration options for example, and not because they are only allowed to submit somthing to db for just one time in a session. This works well, i just have to fix the "accidental reloads".