立司马绍为晋王太子。318年，司马睿即位称帝，改元太兴，司马绍被立为皇太子。永昌元年（322年）发生王敦之乱，大将军王敦领兵进攻建康并佔领石头城，晋元帝派王导等人进攻石头城但都被王敦击败，司马绍于是打算率领将士与王敦决一死战，即将出发时因遭太子中庶子温峤极力劝阻而没有实行。随后王敦自任丞相并掌握朝政，见司马绍勇而有谋，而且朝野中亦有很高名望，于是打算诬陷他不孝而将他废掉，但因温峤等大臣支持司马绍，王敦终也不能废掉司马绍。晋元帝因王敦之乱而忧愤成疾，于当年闰十一月己丑日（323年1月3日）病逝，司马绍