鎮以老集市張家塝得名。1951年為張塝區,1958年改東方紅公社,1959年更名張塝公社,1961年改張塝區。1974年撤區並社,分設張塝公社、孫沖公社。1984年改張塝區,下設孫沖等鄉。1987年撤區並鄉,分設縣轄張塝鎮、孫沖鄉。1996年,張塝鎮面積121平方千米,人口4萬人,轄張塝、韓塝、橫路、龍潭沖、方咀、大同司、下馬、歇肓嶺、船型、田六、馬踏石、車門、黃梅山、馬鞍山、六溪沖、瓢鋪、文畈、陳廣、範垸、衛河、雷山、魯圍、彭山、余垱、百葉25個行政村和張塝1個居委會;孫沖鄉面積83.7平方千米,人口1.9萬人,轄孫沖、七裏沖、土庫、大竹沖、九潭沖、胡垸、塔林巖、宋垱、舒垸、新路、塘抵坳、古木沖12個行政村。
2001年,撤銷孫沖鄉,並入張塝鎮。2004年,鎮政府駐張家塝,人口61486人,面積207.5平方千米,轄張塝1個居委會和韓塝、橫路、龍潭沖、方咀、大同司、下馬溝、歇肩嶺、船型、田六、馬踏石、下車門、黃梅山、馬鞍山、六溪沖、瓢鋪、文畈、陳廣、範垸、魏河、雷山、魯圍、彭山、余當、百葉、孫沖、七裏沖、土庫、大竹沖、九潭沖、胡垸、塔林巖、宋當、舒垸、新路、塘抵坳、古木沖等37個行政村。
2013年代碼及城鄉分類421126110:~001 121張榜居委會 ~200 220範垸村 ~201 220下車門村 ~202 220大同司村 ~203 220魏河村 ~204 122田六村 ~205 220雷山村 ~206 220百葉村 ~207 121張榜村 ~208 220橫路村 ~209 220余宕村 ~210 220文畈村 ~211 220馬踏石村 ~212 220六溪沖村 ~213 220瓢鋪村 ~214 220黃梅山村 ~215 220龍旦村 ~216 220魯圍村 ~217 220陳廣村 ~218 220韓榜村 ~219 220馬鞍山村 ~220 220下馬溝村 ~221 220船型村 ~222 220歇肩嶺村 ~223 220方咀村 ~224 220彭山村 ~225 220塘坻坳村 ~226 220塔林巖村 ~227 220土庫村 ~228 220新路村 ~229 220舒垸村 ~230 220大竹沖村 ~231 220孫沖村 ~232 220胡垸村 ~233 220古木沖村 ~234 220九潭沖村 ~235 220七裏沖村 ~236 220宋宕村