Resoulution of Problem 1:
You probably used something like this:
__doPostBack('<%=btnButton.ClientID %>', "");
Instead, you should use something like this:
__doPostBack('<%=btnButton.UniqueID %>', "");
So if you noticed, you need to send the UniqueID of the button, not the ClientID.