原張堰鎮(zhèn)域秦代屬海鹽縣。
南朝梁代時先后屬前京縣、胥浦縣。
隋朝開皇年間屬鹽官縣。
唐朝時先為海鹽縣,后屬嘉興縣,天寶年間置華亭縣后屬華亭縣。
唐末至元代,浦東場鹽課司大使署設(shè)此。
明代金山巡檢司署、稅課局駐此。
清朝順治十三年(1656),華亭縣析出部分地域設(shè)婁縣,鎮(zhèn)區(qū)屬婁縣。
雍正四年置金山縣,張堰鎮(zhèn)屬金山縣。
1912年張堰設(shè)市,市公所設(shè)于花園浜,轄張堰、廊下、錢圩、干巷4鄉(xiāng)鎮(zhèn)。
1927年改稱張堰鄉(xiāng),設(shè)行政局于鎮(zhèn)。
1929年屬第六區(qū)(張堰)管轄。
1934年改稱第四區(qū),并析張堰鎮(zhèn)為留溪、欽明兩鎮(zhèn)。
1946年并留溪、欽明鎮(zhèn)為張堰鎮(zhèn)。
1949年新中國成立后,鎮(zhèn)隨縣隸江蘇省蘇南行政公署松江專區(qū)。
1951年4月升為縣屬鎮(zhèn)。
1957年成立張堰鄉(xiāng),下轄12個高級農(nóng)業(yè)生產(chǎn)合作社。
1958年11月劃入上海市。
1959年鎮(zhèn)屬張堰人民公社管轄。
1961年10月鎮(zhèn)社分設(shè),張堰鎮(zhèn)復為縣屬鎮(zhèn)。
1984年張堰人民公社改為張堰鄉(xiāng)建制。
1993年12月撤銷張堰鎮(zhèn)、張堰鄉(xiāng)建制,合并成立新的張堰鎮(zhèn),名稱使用至今。