I recently answered this:
Q When a battery, by performing work on a charge, moves it to the higher potential, why doesn't the charge move through the battery and return to the low potential, why does it go through the circuit?
A: Simply, because the battery exerts a non-electrostatic force (due to internal chemical reactions) that force the electrons to move the opposite direction. Remember the battery does some work in doing what is not favorable therefore the energy in battery is drained after sometime.
Am I correct? Seems like some people disagree.