清康熙十年(1671),因赈灾设南翔厂。
道光三年(1823)南翔厂析出真圣堂、封浜、陈店、江桥4厂。
宣统元年(1909)改成南翔乡。
民国三年(1914)改成嘉定县第十乡。
民国十七年(1928)改槎南市,其时已有南翔镇建制。
翌年改成嘉定县第二区,分设南翔镇、南翔乡。
民国二十七年(1938)复名第十乡。
民国三十五年(1946)8月称南翔镇。
1949年5月14日南翔解放,16日集镇设南翔市人民政府,农村设嘉定县第一乡镇联合办事处。
10月,撤销第一乡镇联合办事处,建立纪王区人民政府。
1950年6月13日与南翔市合并,改设南翔区人民政府,下设13个乡人民政府和南翔镇公所。
同年11月,南翔镇划为县属镇,设南翔镇人民政府,之后分别改为镇人民委员会、镇革命委员会。
1952年10月,南翔区人民政府改为南翔区公所。
1957年1月,南翔区公所改为南翔乡人民委员会,南翔一直属江苏省嘉定县管辖。
1958年,嘉定县由江苏省划为上海市。
同年9月27日,由南翔乡和纪王乡吴淞江以北地区合并建立南翔人民公社,总面积68.24平方千米(包括镇区)。
1959年5月27日,将沪宁线西南部划出另建封浜人民公社,并改称南翔人民公社管理委员会。
1983年4月,南翔人民公社与南翔镇合并,成立南翔镇人民政府。
1992年10月,嘉定撤县建区,南翔镇属上海市嘉定区,地名沿用至今。