Now, I'm using version 6.1.3 so I don't know if this has been fixed in later versions of DNN, but I figured I'd mention it.
This is a bug I noticed when a sites Page State Persistence is set to Memory. I know that this setting tends to really screw with the AJAX and among other things for modules. One of these things is downloading.
I was creating a custom module and made it so when the user clicks a button they would download a file. This worked well enough, but when they clicked on another button, whether this be a different button or the same button, the page would refresh.
I've known for a long time the Page Stat Persistence being set to Memory has been the part of the cause of this, but I've dug a bit deeper and have discovered that the culprit that causes this page refresh is the ribbon bar! Turns out at some point after that second button click the Ribbon Bars DdlModeSelectedIndexChanged is called and it checks to see if the Page.IsCallback is true. Normally when it is nothing happens, but something about the Page State Persistence makes it come up false and then does a Response.Redirect.
So, the module will work fine for regular users, but for any users such as admins who have ribbon bars this bug will rear it's ugly head. I've always tested as host on my local instance so this was quite annoying.