且说率领晋国下军的将领栾枝打探到楚军右师是陈、蔡两国的军队,十分高兴,因为陈、蔡两国的军队怯战,很容易就能攻破。于是,栾枝事先让人用虎皮蒙住驾车的马匹,等到和楚军交战的时候,陈、蔡两国的军队以为是老虎来了,惊慌逃窜,乱了阵脚。晋军趁乱一举打败了楚国右师,死伤的楚军不计其数。栾枝又派人砍来树枝,拴在马车后面,弄得满天飞尘,然后命令一部分晋军假扮成陈、蔡两国军队的士兵,打着楚国的旗号,往楚国军营中报告说右师已经取胜,中军可以进兵了。成得臣站在车子上望了望,看见晋军失败而逃,一路上烟尘滚滚,就高兴地说:“晋军果然失败了!”于是催促楚军左师冲过去。
楚军的左师看见对面晋军的旌旗高悬,料想旗下就是主将,就直冲了过去。晋军将领狐偃咎犯见势,上前迎战,只打了几个回合,就驾车往回跑。楚军将领以为晋军胆怯,便指挥着大军全力追赶。忽然,听到鼓声震天,一支晋军冲出来,将楚军拦腰截成两节,狐偃咎犯也转了回来,继续作战。楚军抵挡不住,杀出一条血路逃走,把兵器车马全都丢下了。
楚军的左右两师都已经被打败,而成得臣却以为左右两师已经取胜,于是就下令中军击鼓进兵,让他的儿子成大心出阵。之前,先轸已经吩咐好将领祁瞒要守住中军,无论敌军怎样挑战,都不应战。起先,祁瞒还能坚守先轸的命令,但是后来听说前来挑战的是个十五六岁的孩子,就忍不住冲了出去。两人大战了二十多个回合也没分出胜负。楚将斗越椒见成大心一直不胜,就掏出弓箭,射中了祁瞒的盔缨。祁瞒吃了一惊,绕阵逃跑。斗越椒和成大心率领楚军直奔晋国中军大营,晋国中军的士兵见没了将领,立刻乱了阵脚。幸好栾枝、狐偃等人一起赶到,晋军便犹如铜墙铁壁一般。直到这时,成得臣才知道楚军的左右两师已经被打败,想要撤回已经来不及,晋军已将楚军重重围困。