It happens because previously you might have run out of food while auto-fighting. If that's the case, then let the troops get damaged and then see whether they are regenerating automatically. If they are not, press "Recruit" in the Hero tab for all those generals whose troops are not regenerating, and then continue auto-fighting. It should work.